<p><strong>前言</strong></p><p>一直以来都是用springmvc+mybatis进行后端接口开发工作,最近闲来无事,根据现有功能需求,用springboot+mybatis部署一套简单的web项目。</p><p><strong>所用工具</strong></p><p>IntelliJ IDEA 2018.1.4</p><p>JDK 1.8</p><p>apache-tomcat-8.0.50</p><p><strong>所解决的问题</strong></p><p>1、如何用idea创建springboot项目</p><p>2、如何进行 服务器、数据库、mybatis、视图解析器的配置</p><p>3、如何使用mybatis generator 自动生成代码</p><p>4、如何使用multipart进行文件上传</p><p>5、如何运用springboot的事务</p><p>6、如何打包进行tomcat部署</p><p><strong>运用idea创建springboot项目</strong></p><p>1、打开IDEA,File -> New -> Project,选择Spring Initializr,然后next。</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2Fja%3D6AUaYw40K8qAGkazXgT5XBFaRfrnC1eHELguzfw2j414compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p>2、修改Ariifact,下面的Name、package会自动修改;Packaging有两种模式,一种是Jar,一种是War;因为springboot中自带了tomcat,因此可以将项目打成jar,直接运行;而我现有项目是部署到tomcat上,因此我需要打成war包;然后next。</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FRIR1gymEfWEDJsYAAjURDXGP72UMEqfin3FNXcS4SdKs414compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p>3、设置项目依赖,然后next ,进入下一页 ,设置project name,点击finish完成。</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FAgbrsyqrB3vXcr19SI7jH3m8EWZ7H1gtnDUAbA25QDGTQ14compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FS26RnuzB6seMtx9QYuCctGZdFt82pryTIowzMujYMdy%3DP14compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p>4、进入项目</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2Fwvd3kw9qSGD80%3D0Z5Sh9A69qOEnTSG4eCIbFrEuTszRGP14compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p>pom.xml</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FTA1QjIRicusXt3qE2vKloF2%3D7lnJDRG8HkCu2a9NGN0up14compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FzWTTDg5IZCIi%3DcdI2MMZJcT4jTd8wz6k2d9XHMqyOd0vD14compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p><strong>无配置文件的springmvc</strong></p><p>通过两个例子:1、http请求访问并渲染页面 2、http请求返回json字符串</p><p>-配置数据源、视图渲染</p><p>-添加视图渲染pom依赖</p><p>-创建WelcomeController、welcome.jsp</p><p>新增之后的项目结构</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FKDBfYiwKSI1CAHRntdQVka8P%3DhajulMFGqWesMeaZBM2E14compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p>application.yml 配置数据源 和 视图渲染</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FSJNaZIfoCER3MN14Di7BCQd4gKgUyJ%3DUDnGsx1iW2nZmE14compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>pom.xml新增视图渲染依赖</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FGE15AGQt0AD3WaL2ElkVfvxgHT7blJoL27%3DdL8JsU2j5v14compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>创建WelcomeController</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FSpXn%3DpgX3dU7edkzdDQaWedcbedU0qQe6qHllipYgfmzY14compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F1Mzx5Tu1doaixW9gRN8bUWMlkOXfor9%3DCwTuT0fhFL1gn15compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>创建welcome.jsp</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FnUNPTIb43PUv3uTqWDbBxb1mgWpNEjt38rQSNdDL3UZR415compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>启动项目,并访问</p><p><strong>使用mybatis generator自动生成代码</strong></p><p>用于为表创建 *Mapper.xml、model、dao文件</p><p>在pom.xml 添加mybatis generator 自动生成代码插件</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FhVxGyZl2IfsrQxqjnnklb4ftTrFzGyQLIfBQFNClv2aJX16compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>在上面pom.xml配置的pugin路径resources/generator 文件夹下添加generatorConfig.xml</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F87%3DYROgt9SPGhc5BXfYl7l64LiTqDvV40AlNIRWk2FPz416compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>使用maven中的mybatis-generator:generate根据数据库里面表生产相关的类</p><p>Edit Configurations -> 添加 -> Maven</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FhpFeGQyLoUz90z33949oUy28r05rBn3TN7DTu6L42gEoK17compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FbcY1r8X8PHoZ1jqv1sddw%3D3unCSUEcK1xp3TAaAk2uN7S17compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FF7zpzO4Fc8O079LA9KiKpymfbw4x%3DIoMWbxLY7pSkY4hi18compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FKNQrqm2u8InL8tKgDpqBzAnglndr4oSDdM8yrrnUGat9D18compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FqHIjSNSzdv4AiChB1gO4YC9kDTP1xrWHgVp2fhhBqlbuF19compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>image.png</p><p><strong>配置mybatis</strong></p><p>在application.yml 中添加mybatis的配置</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FGsEXf2FAlyukJMjPSE7Z4IHe5elwIdCdCrVBXeKOOgglO18.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>在StudentBindingMapper.java中添加 @Repository("studentBindingMapper")注解才能使用@MapperScan扫描到</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2Frd2DveOGHTgxEKDzukQggvI5Ral%3DvnQ1wsEJHlKtbY%3DxP19.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>在SpringbootdemoApplication.java添加@MapperScan</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FjWnKofXec6y8B0VW2NOubfc6fidL7YQBTeIZj93gg6Ifk19compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p><strong>添加service、controller层</strong></p><p>项目层级</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FqHIjSNSzdv4AiChB1gO4YC9kDTP1xrWHgVp2fhhBqlbuF19compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>添加StudentBindingService</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FqdC1zETr0DbdDy30IM%3D7jYg82IbP49q6eg2U6pjmYl5SG20compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>添加StudentBindingServiceImpl</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FTfVMJ3zOQl998ZBHLxI6oAdUSPe3otFNaS6sGOjsaRPzN20compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2Fvgx3HgWf27FEY7BbmYwyGTC4hf0jlggEm2qxuPd0FrIKr20compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>新增StudentBindingController</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FLh2uAABu2j7DdUmnCuIGMPxgVC01yOk4IzG%3D2cv%3DLMpgn21compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F593JsR2QJqGA7DJMCmaZrTDdE1m0FJ2L3cH8GR5Ant60e21compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F8cnW2vjI6iTloAtt6QSJs9f%3D6peFWrC4t97b8Hjg%3D%3D2xr22compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FfO35W8zSp%3DXSrKzoQjEUOnCIfl99Bz1TbwecqVH3vCktu23compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2Fiz%3DFKHo8D%3DVXH3Bw%3DN4oyDsj4IG7XN5tvC6KhkvQcv3fn24compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>重启项目之后,就可以访问各个接口</p><p>springboot配置事务</p><p>springboot配置事务有两种方式</p><p>1、在SpringbootdemoApplication.java项目入口,添加@EnableTransactionManagement的注解用来开启事务</p><p>2、在service实现类上添加@Transactional注解,那么该类的所有方法都进行事务管理;也可以直接在service实现类的方法上直接添加@Transactional注解,那么只对该方法进行事务管理,上面代码中有对方法添加事务的例子</p><p>springboot打包进行tomcat部署</p><p>Edit Configuration -> Maven -> 添加 ->启动 -> 复制war包 -> tomcat webapp ->修改war包的名字 -> tomcat bin -> startup.bat</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2Fn6%3D6lSqgAVoCtaRq7bKbSuGr1OA6Vu7%3DYYDtizts0h0AW25compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F%3DvG148aMsjZv%3DHtGsqDGb4el6yFIBfyKmgQtuA51Ck6IB25compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F8tuxMJ1xksF7v%3D5OodwdkaI2DT8dxX45kxSU3wqgvuG3%3D26.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FMdBfvcdCHWBgC%3DnYMLvJikF981wVGglA3QpcMCRmKYx8P26compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F6PK6N8rY3s4UZh8rFhyU8ffoDzy1nOoZt%3DXfcnutqVN3y27compressflag.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2FiIfP4PnuekQS7MjFEqpf11GM3veMpD1dK7j1UTNAaXjAx28.jpg&thumbnail=660x&quality=80&type=jpg"/><br/></p><p>如果有任何疑问,欢迎添加测试入门到大神 共同学习~</p>
讯享网

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/193187.html