当前位置: 首页 > news >正文

网站建设思路方法响应式网站要怎么做

网站建设思路方法,响应式网站要怎么做,微信公众平台开发商,小型网站建设源码概述 Thymeleaf提供了一组Spring集成#xff0c;使您可以将其用作Spring MVC应用程序中JSP的全功能替代品。 这些集成将使您能够#xff1a; Controller像使用JSP一样#xff0c;将Spring MVC 对象中的映射方法转发到Thymeleaf管理的模板。在模板中使用Spring表达式语言使您可以将其用作Spring MVC应用程序中JSP的全功能替代品。 这些集成将使您能够 Controller像使用JSP一样将Spring MVC 对象中的映射方法转发到Thymeleaf管理的模板。在模板中使用Spring表达式语言Spring EL代替OGNL。在与表单支持Bean和结果绑定完全集成的模板中创建表单包括使用属性编辑器转换服务和验证错误处理。显示Spring管理的消息文件中的国际化消息通过常规MessageSource对象。使用Spring自己的资源解析机制解析您的模板。 thymeleaf自己也做了spring的集成所以我们并不需要做太多的配置就可以达到我们想要的结果。thymeleaf提供了两种集成方法①、注解配置也就是java代码②、xml文件配配置本文主要介绍第二种xml配置。 你能get到的知识点 1、springmvc整合thymeleaf 2、spring提供的三种model的使用 3、解决html前端thymeleaf不生效问题见问题1 4、解决html前端显示乱码问题见问题2 springmvc整合thymeleaf 一加入依赖 在springmvc里面除了要加入 thymeleaf的主依赖之外还需要 thymeleaf-spring4否则会报 org.thymeleaf.spring4.view.ThymeleafViewResolver找不到thymeleaf解析器所以 thymeleaf-spring4也是必不可少的。 Thymeleaf具有针对Spring Framework 3.x和4.x的集成由两个独立的库分别称为thymeleaf-spring3和提供thymeleaf-spring4。这些库打包在单独的.jar文件thymeleaf-spring3-{version}.jar和thymeleaf-spring4-{version}.jar中需要添加到类路径中以便在应用程序中使用Thymeleaf的Spring集成 !-- thymeleaf--dependencygroupIdorg.thymeleaf/groupIdartifactIdthymeleaf-spring4/artifactIdversion3.0.11.RELEASE/version/dependencydependencygroupIdorg.thymeleaf/groupIdartifactIdthymeleaf/artifactIdversion3.0.11.RELEASE/version/dependency 复制 在springmvc配置文件中配置thymeleaf解析器官方文档中Thymeleaf提供了上述两个接口的实现 org.thymeleaf.spring4.view.ThymeleafVieworg.thymeleaf.spring4.view.ThymeleafViewResolver 复制 不过现在都已经被 org.thymeleaf.spring4.view.ThymeleafViewResolver所代替至于以上配置是否还能够生效就要靠你来试试了。 !-- thymeleaf 模板解析器 --bean idtemplateResolver classorg.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolverproperty nameprefix value/ /property namesuffix value.html /property nametemplateMode valueHTML /property namecacheable valuefalse /property namecharacterEncoding valueUTF-8//beanbean idtemplateEngine classorg.thymeleaf.spring4.SpringTemplateEngineproperty nametemplateResolver reftemplateResolver //bean!-- 视图解析器--bean idviewResolver classorg.thymeleaf.spring4.view.ThymeleafViewResolverproperty nametemplateEngine reftemplateEngine /property namecharacterEncoding valueUTF-8//bean 复制 ViewResolvers是负责获取特定操作和语言环境的View对象的对象。通常控制器要求ViewResolvers转发到具有特定名称的视图由controller方法返回的String然后应用程序中的所有视图解析器将按有序链执行直到其中一个能够解析该视图为止。如果返回了View对象并且将控件传递给该对象以呈现HTML。 注值得注意的是如果自己设置了spring的视图解析器需要将其注释掉否则thymeleaf解析器可能不会生效我就是因为这个调试了好久最后才发现这个问题。 !-- 配置视图解析器 prefix前缀 suffix后缀 使用thymeleaf需要将其注释掉--bean classorg.springframework.web.servlet.view.InternalResourceViewResolverproperty nameprefix value//property namesuffix value.html//bean 复制 三 编写控制器 需要从控制层传数据到视图时我们就会使用model常用的三种model就是Model、ModelMap、ModelAndView。使用这三种model时spring框架自动创建实例并作为controller的入参用户无需自己创建 1、使用Model /*** 在Model里存入一个用户信息* return hello页面*/GetMapping(returnModelAndView)public String returnModelAndView(Model model){model.addAttribute(userInfo,new UserInfo(lomtom,123,new Address(湖南,邵阳)));return hello;} 复制 Model是一个接口 Model源码 public interface Model {Model addAttribute(String var1, Object var2);Model addAttribute(Object var1);Model addAllAttributes(Collection? var1);Model addAllAttributes(MapString, ? var1);Model mergeAttributes(MapString, ? var1);boolean containsAttribute(String var1);MapString, Object asMap(); } 复制 2、使用ModelMap ModelMap继承LinkedHashMap ModelMap源码 public class ModelMap extends LinkedHashMapString, Object {public ModelMap() {}public ModelMap(String attributeName, Object attributeValue) {this.addAttribute(attributeName, attributeValue);}public ModelMap(Object attributeValue) {this.addAttribute(attributeValue);}public ModelMap addAttribute(String attributeName, Object attributeValue) {Assert.notNull(attributeName, Model attribute name must not be null);this.put(attributeName, attributeValue);return this;}public ModelMap addAttribute(Object attributeValue) {Assert.notNull(attributeValue, Model object must not be null);return attributeValue instanceof Collection ((Collection)attributeValue).isEmpty() ? this : this.addAttribute(Conventions.getVariableName(attributeValue), attributeValue);}public ModelMap addAllAttributes(Collection? attributeValues) {if (attributeValues ! null) {Iterator var2 attributeValues.iterator();while(var2.hasNext()) {Object attributeValue var2.next();this.addAttribute(attributeValue);}}return this;}public ModelMap addAllAttributes(MapString, ? attributes) {if (attributes ! null) {this.putAll(attributes);}return this;}public ModelMap mergeAttributes(MapString, ? attributes) {if (attributes ! null) {Iterator var2 attributes.entrySet().iterator();while(var2.hasNext()) {EntryString, ? entry (Entry)var2.next();String key (String)entry.getKey();if (!this.containsKey(key)) {this.put(key, entry.getValue());}}}return this;}public boolean containsAttribute(String attributeName) {return this.containsKey(attributeName);} } 复制 3、使用ModelAndView /*** 在ModelAndView里存入一个用户信息* return ModelAndView*/GetMapping(returnModelAndView)public ModelAndView returnModelAndView(ModelAndView modelAndView){modelAndView.setViewName(hello);modelAndView.addObject(userInfo,new UserInfo(lomtom,123,new Address(湖南,邵阳)));return modelAndView;} 复制 ModelAndView顾名思义就是模型和试图的结合。ModelAndView源码 public class ModelAndView {private Object view;private ModelMap model;private HttpStatus status;private boolean cleared false;...... } 复制 四编写html 首先写一个链接请求 returnModelAndView请求。 a hrefreturnModelAndViewModelAndView/a 复制 然后写hello.html页面用于验证 h2你好啊你成功了/h2 p th:text${userInfo.userName}来自${userInfo.address.province}${userInfo.address.city}/p 复制 五结果 六记录我遇到的问题 问题1配置好一切后thymeleaf无法解析所有关于thymeleaf的显示都无法生效。解决由于我配置了spring的视图解析所以导致thymeleaf的试图解析无法生效所以去掉spring的视图解析。 thmelaf介绍Springmvc的视图解析快速浏览其属性足以了解其配置方式 viewClass建立View实例的类。对于JSP解析器这是必需的但是当我们与Thymeleaf合作时根本不需要。prefix与suffixThymeleaf的TemplateResolver对象中相同名称的属性的工作方式相似。order 确定在链中查询ViewResolver的顺序。viewNames 允许使用此ViewResolver解析视图名称带通配符。 问题2前端显示乱码具体表现为后台传入的不乱码但是html中原本存在的乱码。解决在试图解析器和模板解析器中加入参数propertynamecharacterEncodingvalueUTF-8/
http://www.hkea.cn/news/14388892/

相关文章:

  • 东莞做网站做seo优化外包网络公司做自己的游戏网站
  • 怎么建设自己的网页天津seo标准
  • 打不开建设银行网站浙江网站建设有哪些
  • 做网站需要什么素材设计公司资质怎么申请
  • 网站备案 管局审核 需要多长时间产品开发流程表
  • 深圳美容网站建网站建设销售常见问题
  • 制作公司网站价格学东西的网站
  • 上海网站建设推荐zencart添加wordpress
  • 电子商务网站建设的特点网站建设 专项资金变更
  • 张家港网站优化建筑公司发展规划
  • 水果商城网站模板网络营销的整体概念
  • 网站开发的分工多媒体设计制作公司北京
  • 抽奖网站做的下去吗代做百度关键词排名
  • 乌海网站建设开网店详细步骤
  • 网站建设毕业设计中期进度报告百度seo营销
  • 河南网站设计公司价格aso是什么意思
  • 蜘蛛不抓取网站的原因wordpress怎么进入后台
  • 长春做网站要多少钱计算机系毕设代做网站
  • 6免费网站建站无为网站建设
  • 宠物网站设计案例培训通网站建设
  • 推广产品网站建设国内html5网站案例
  • 网站宣传搭建网站建设站长相关专业
  • 90后做受网站django怎么做网站
  • 汕头建站模板搭建企业手机网站建设流程
  • 深圳 三人 网站建设wordpress插件连不上
  • 东莞阿里网站设计李时珍现货交易平台
  • 上海装修网站建设重庆市建筑一体化平台
  • 杭州网站制作公司自己建一个网站需要多少钱
  • 著名的网站建设公司地方网站源码
  • 营销型网站建设报价方案营销型网站建设思路