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

定制营销型网站制作吴桥钢结构网架公司

定制营销型网站制作,吴桥钢结构网架公司,如何解决网站兼容性问题,系统优化工具创建SpringBoot模块 首先需要引设置maven并引用maven环境 1.打开项目结构#xff0c;new module#xff0c;选择Spring Initializr#xff0c;URL选默认#xff1a; group填写分组如com.kdy #xff0c; Artifact起个模块名如springboot_quickstart#xff0c;Type选择M…创建SpringBoot模块 首先需要引设置maven并引用maven环境 1.打开项目结构new module选择Spring InitializrURL选默认 group填写分组如com.kdy  Artifact起个模块名如springboot_quickstartType选择Maven  Language为Java  packing选择jar Java版本选择8 version自定义 name和Description不重要 Package填写包名如com.kdy。 2.next后选择某个稳定版如2.5.4依赖里面勾选Web下的Spring Web依赖 Spring WebBuild web, including RESTful, applications using Spring MVC. UsesApache Tomcat as the default embedded container. SpringWeb使用SpringMVC.UsesApacheTomcat作为默认的嵌入式容器构建Web包括RESTful和上下文applicaiton。 3.next起个模块名可用和Artifict一样如springboot_quickstart666选择位置。finish。 4.打开这个springboot模块先找到pom文件刷新maven将spring web的spring-boot-start-parent和spring-boot-starter-web和spring-boot-starter-test三个starter加载进来。Java版本和packaging打包方式也都可以在pom文件中调。 5.项目结构 src和pom文件src包含main和testmain包含Java和resourceJava包含包com.kdy包下有个引导类。resource下static文件夹和template文件夹和application.properties配置文件test包含JavaJava包含com.kdy包包里有测试类。 入门 com.kdy.controller中创建BookController RestController RequestMapping(/books) public class BookController {GetMappingpublic String getById(){System.out.println(springboot is running...);return springboot is running;} } 启动引导类访问8080加controller即可  和spring区别 spring阶段需要写web.xml文件并配置springboot不用了。现在不需要配置spring核心配置和springmvc的配置了。 隐藏左侧目录冗余文件夹或文件 Setting - editor - File Types - lgnored Files and Folders上名想忽略的文件名也用*.imi这种*号进行占位。 SpringBoot和Spring的区别 SpringBoot是由Pivotal团队提供的全新框架其设计目的是用来简化Spring应用的初始搭建以及开发过程。 spring缺点依赖设置繁琐配置繁琐。sprignboot优点起步依赖简化依赖配置) 自动配置简化常用工程相关配置)辅助功能内置服务器...... Parent 版本管理防止版本冲突。 所有SpringBoot项目要继承的项目定义了若干个坐标版本号依赖管理而非依赖以达到减少依赖冲突的目的。spring-boot-starter-arent各版本间存在着诸多坐标版本不同 Start start的就是含有很多依赖的依赖springboot中有很多这样的start依赖传递的方式的start的依赖所以就简便了很多。 以达到减少依赖配置的目的。 引导类 SpringBootApplication public class SpringbootBeginQuickstartApplication {public static void main(String[] args) {SpringApplication.run(SpringbootBeginQuickstartApplication.class, args);} } SpringApplication.run的就是一个容器 SpringBootApplication public class SpringbootBeginQuickstartApplication {public static void main(String[] args) {ConfigurableApplicationContext ctx SpringApplication.run(SpringbootBeginQuickstartApplication.class, args);BookController bean ctx.getBean(BookController.class);System.out.println(bean);//com.kdy.controller.BookController6e28bb87} } 当然你也可用Component标柱的类也会到容器中。  SpringBootApplication标记为springboot配置类。 内含SpringBootConfiguration-》Configuration内涵ComponentScan 内嵌tomcat spring-boot-starter-web中有spring-boot-starter-tomcat有tomcat-embed-core。 程序启动就是通过这个tomcat的核心core发布的。 当然我们也可将其换为 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactIdexclusionsexclusiongroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-tomcat/artifactId/exclusion/exclusions/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-jetty/artifactId/dependency Jetty比Tomcat更轻量级可扩展性更强相较于Tomcat)谷歌应用引擎GAE)已经全面切换为Jetty。 RestFul风格开发 Controller与ResponseBodyRestController设置当前controller为restFul风格 /*Controller ResponseBody*/ RestController(/users)//同时提取下面restfu风格的统一路径 public class UserController { /* RequestMapping(/save)ResponseBodypublic String save(RequestBody User user){System.out.println(user saveuser);return {model:user save};//手写json}RequestMapping(/delete)ResponseBodypublic String delete(Integer id){System.out.println(user deleteid);return {model:user delete};}RequestMapping(/update)ResponseBodypublic String update(RequestBody User user){System.out.println(user updateuser);return {model:user update};}*///restful//RequestMapping(value /users,method RequestMethod.POST)改为如下PostMapping//ResponseBody 提到controller上了public String save2(RequestBody User user){System.out.println(user saveuser);return {model:user save};//手写json}//RequestMapping(value /users/{id},method RequestMethod.DELETE)改为如下DeleteMapping(/{id})//ResponseBody 提到controller上了public String delete2(PathVariable(id) Integer id){System.out.println(user deleteid);return {model:user delete};}//RequestMapping(value /users,method RequestMethod.PUT)改为如下PutMapping//ResponseBody 提到controller上了public String update2(RequestBody User user){System.out.println(user updateuser);return {model:user update};}//RequestMapping(value /users/{id},method RequestMethod.GET)改为如下GetMapping(/{id})//ResponseBody 提到controller上了public String getById(PathVariable(id) Integer id){System.out.println(user getByIdid);return {model:user getById};}//RequestMapping(value /users,method RequestMethod.GET)改为如下GetMapping//ResponseBody 提到controller上了public String getAll(){System.out.println(user getaLL);return {model:user getaLL};} } RequestBody与RequestParam与PathVariable的区别 RequestParam用于接收url地址传参或表单传参 RequestBody用于接收json数据 PathVariable用于接收路径参数使用{参数名称}描述路径参数 后期开发中 发送请求参数超过1个时以json格式为主RequestBody应用较广 如果发送非json格式数据选用RequestParam接收请求参数 采用RESTful进行开发当参数数量较少时例如1个可以采用PathVariable接收请求路径变量通常用于传递id值 SpringBoot复制工程文件夹模板 详见springboot基础篇4开头部分 SpringBoot配置文件yml等 默认配置文件application.properties 敲下有提示比如 server.port80 #关闭启动banner显示 # spring.main.banner-modeoff #换成当前文件夹下的其他图片 # spring.banner.image.locationlogo.png # 日志级别 info \debug\error logging.level.rootinfo 查询boot配置的网址  Spring Boot Reference Documentation springboot的配置文件application.properties是关联pom中的start-web包的是关联服务器的。所以springboot的每一个配置使用的是它对应的一项技术。 yml resource新建file起名application.yml并将原来application.properties删除或移到resource下bak文件夹。 server:port: 81#关闭启动banner显示 spring:main:banner-mode: off#换成当前文件夹下的其他图片banner:image:location: logo.png# 日志级别 info \debug\error logging:level:root: infoidea有提示  yaml resouce下我们将yml文件扔到bak文件夹中再创建一个application.yaml 内容同上ymlport改为82. maven clean后重启 如果resource下三种配置共存优先级 三个配置工程优先级propertiesymlyaml 不同配置文件中相同配置按照加载优先级相互覆盖不同配置文件中不同配置全部保留 只是起冲突的内容才会用到上面优先级。 设置yaml文件idea识别为boot配置yaml无提示 右上角项目结构-facets-spring绿色选择当前项目点进点右侧上方菜单最会一个boot配置按钮customize spring boot按钮点菜单加号选择本项目yaml和yml文件即可。 可删除properties文件如果你创建配置名叫application1111.yml也可在上述boot配置让其识别为boot配置文件。 yml格式语法规范 yml重数据而轻格式。XML格式明显。 大小写敏感 属性层级关系使用多行描述每行结尾使用冒号结束 使用缩进表示层级关系同层级左侧对齐只允许使用2个空格不允许使用Tab键) 属性值前面添加空格属性名与属性值之间使用冒号空格作为分隔) #表示注释 yml定义属性和读取属性 # 自定义yml属性 country: 英国 birthday: 2002-11-15 user:name: kdyage: 22 user2:name: 张三age: 22 # 单个数组 fruit:- apple- banana # 单个数组 fruit2: [apple,banana,pain apple] #对象数组 userList:- name: zhangsanage: 18- name: lisiage 17 #对象数组 userlist3: [{name:zhangsan,age:18},{name:lisi,age:17}] #对象数组 userList2:-name: zhangsanage: 18-name: lisiage 17 Value读取yml中写的属性 RestController RequestMapping(/books) public class BookController {Value(${country})private String country;Value(${user.name})private String name;Value(${fruit[1]})private String fruit;Value(${userList[0].name})private String listName;GetMappingpublic String getById(){System.out.println(springboot is running...);System.out.println(country);System.out.println(name);System.out.println(fruit);System.out.println(listName);return springboot is running;} } 或使用自动装配封装全部yml属性Autowired    private Environment env; RestController RequestMapping(/books) public class BookController {Autowiredprivate Environment env;//import org.springframework.core.env.Environment;GetMappingpublic String getById(){System.out.println(env.getProperty(country));System.out.println(env.getProperty(user.name));System.out.println(env.getProperty(fruit[1]));System.out.println(env.getProperty(userList[0].name));return springboot is running;} } 或封装部分yml属性 datasource:driver: com.mysql.jd.Driverurl: jdbc:mysql://localhost/springboot_dbusername: rootpassword: root123456 随便找个地方建一个对应的类 Component//spring接管 ConfigurationProperties(prefix datasource)//yml中的属性名 public class MyDataSource {private String driver;private String url;private String username;private String password;//提供set方法以便spring自动装配使用public void setDriver(String driver) {this.driver driver;}public void setUrl(String url) {this.url url;}public void setUsername(String username) {this.username username;}public void setPassword(String password) {this.password password;}Overridepublic String toString() {return MyDataSource{ driver driver \ , url url \ , username username \ , password password \ };} } 自动装配 RestController RequestMapping(/books) public class BookController {Autowiredprivate MyDataSource myDataSource;GetMappingpublic String getById(){System.out.println(myDataSource);return springboot is running;} } yml属性引用当前yml的其他属性 baseDir: d:\img tempDir: ${baseDir}\a.txt #加上引号转义为字符串 如果属性中出现特殊字符可以使用双引号包裹起来作为字符解析。 springboot整合第三方技术 1.junit springboot项目中pom自带的spring-boot-starter-test集成了junit 可找到结构test目录下自动生成的测试类Autowired注入某个bean就可在方法中调用该bean的方法 SpringBootTest class SpringbootBeginQuickstartApplicationTests {Autowiredprivate BookDaoImpl bookDao;Testvoid contextLoads() {bookDao.save();} }新建测试类 如果新建测试类在引导类所在的包及其子包下的话如引导类在mian中Java中的com.kdy且要新建的测试类在test目录中的java的com.kdy及子包下这时类上方只需加上SpringBootTest可注入可用Test测试。 但如果如果新建的测试类不在引导类所在的包及其子包下注解需要加上引导类字节码 SpringBootTest(classes SpringbootBeginQuickstartApplication.class) 2.Mybatis 创建boot项目除了勾选web下pring Web依赖也可在勾选SQL里的 mybatis Framewok和Mysql Driver。不勾选自己加也行如下 !--mybatis--dependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion2.1.3/version/dependency!--mysql--dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdscoperuntime/scope/dependency 然后domain写个实体类可以lombok加上然后mapper包只需写一个BookMapper的接口。 接口中类上方只需加上一个boot整合muybatis的注解Mapper即可然后可用注解的方式写sql在厕所类中注入后调用测试即可。 Mapper//用在接口类上在编译之后会生成相应的接口实现类 public interface BookMapper {Select(select * from book where id #{id})public Book getBookById(Param(id) Integer id); } 也可在resource下创建和mapper接口同一个包路径的mapper.xml复制头文件在里面写sql语句不用sql注解了。 如果版本问题运行出现时区问题需在url后加上?serverTimezonUTC  3.Mybatis-Plus 创建项目时可用阿里云的镜像 Choose starter service URL:  选择 Custom:  https://start.aliyun.com先勾选spring web依赖在勾选关系型数据库mybatisPlus和mysql drver会引入以下依赖 dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-boot-starter/artifactIdversion3.4.2/version/dependency mapper包只需写一个BookMapper的接口 Mapper public interface BookMapper extends BaseMapperBook { } 无需注解写sql或mapper.xml写sqlmp中有很多增删改查的api 需要类名和数据表名及相关属性名称对应起来。 也可在yml中配置mp的参数如 mybatis-plus:global-config:db-config:table-prefix: tab_ #如果实体类叫Book数据表名叫tab_book可配置这个 4.Druid 阿里巴巴的包手动导包我们配合mybatis和mysql使用 dependencygroupIdcom.alibaba/groupIdartifactIddruid-spring-boot-starter/artifactIdversion1.2.1/version/dependency spring:datasource:driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://localhost:3306/jdbcusername: rootpassword: root123type: com.alibaba.druid.pool.DruidDataSource #非整合方式配置duird spring:datasource:druid: #整合方式配置driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://localhost:3306/jdbcusername: rootpassword: root123 运行mybatis的测试即可测试mybatis接口方法。 总结 导包普通包或starter配置yml属性使用、测试、运行
http://www.dnsts.com.cn/news/174363.html

相关文章:

  • 诚信企业品牌网站建设小公司做网站需要注意什么问题
  • 旅游攻略的网站怎么做网站开发需求用什么软件
  • 开发什么网站好网站建设优惠券
  • 中山网站建设文化如何网页制作与网站建设课堂实录
  • 教育房地产 网站建设修改WordPress图片上传
  • 介绍婚纱网站的ppt怎么做网站分为几种
  • 深圳网站制作建设公司无锡企业网站排名
  • 电脑可以做网站服务器么现在淘客做网站还行吗
  • 做股权众筹的网站自己网站首页如何设置
  • 长春网站建设方案报价网站收录平台
  • 音乐网站前台模板系统优化设置
  • 网站注销重新备案jekyll wordpress
  • 黑龙江交通基础设施建设网站物流行业网站建设
  • 贵阳做网站的公司个人网页设计思路怎么写
  • 泰州网站建设外包用dw做的网站容易变形
  • php与网站建设如何设计一个网站
  • 无锡网站策划惠州小程序开发
  • 网站被采集了 一个栏目不收录广西省桂林市
  • 顺德医疗网站建设公司做网站让我们销售
  • 南昌购物网站制作网站外链内链怎么做
  • asp作业做购物网站代码空调网站模版
  • 各网站封面尺寸精品课程网站建设步骤
  • 网站的建设是什么建筑网片焊接机
  • 沈阳开发网站购物网站建设特色
  • 做设计接私活的网站简述网站建设的具体步骤
  • 网站设计样例做字体特效的网站
  • 天台县城市建设规划局网站wordpress字体调整
  • 挂机宝如何做网站qq营销网站源码
  • 申请网址的网站中国最新军事新闻直播
  • 旅游网站对比模板下载网站 的版面结构