mapperscan注解_SpringBoot 遗忘后的简单快速回忆之环境搭建与常见注解

原文作者:笑而抿之乎

e1c407368c48add3a5ac8237830adf70.png

搭建SpringBoot环境,创建maven 项目后

1,创建入口类:

@MapperScan(basePackages = "com.baizhi.dao"  ) //把dao层交给工厂管理@SpringBootApplication//标识入口类的注解public class Applincation  {    public static void main(String[] args) {        SpringApplication.run(Applincation.class,args);    }}

2,创建统一配置 application.yml

层级之间有一个tab键的间隔
属性名和值之间有一个空格的间隔

配置springBoot 的端口号和项目名 项目名必须/开头

server:  port: 8989  servlet:    context-path: /userModel

配置mybatis mapper.xml 文件的位置

mybatis:mapper-locations: classpath:com/baizhi/mapper/UserDao*.xml

b补充mubatis 配置 开启mybatis 的批处理,这样可以提高同类操作的效率 ,比如循环按id删除

mybatis.executor-type=batch

配置连接数据库的连接属性 用的阿里的连接池

spring:datasource:  username: root  password: root  type: com.alibaba.druid.pool.DruidDataSource  driver-class-name: com.mysql.jdbc.Driver  url: jdbc:mysql://主机名:3306/库名?useSSL=false&characterEncoding=UTF8&serverTimezone=GMT
配置springBoot 自动依赖的日志级别
logging: level:   com.baizhi.dao: DEBUG    com.baizhi.service: warning   root: info #全局的

配置实体类接收到的时间格式

spring:  mvc:   date-format: yyyy-MM-dd jackson:   date-format: yyyy-MM-dd   time-zone: GMT+8   #因为SpringBoot 用的时国外的时区,所以要+8改成北京的

post表单提交乱码和tomcat乱码 默认就是utf-8

spring.http.encoding.charset=UTF-8server.tomcat.uri-encoding=UTF-8

3,依赖

首先在< dependencies >标签前导如仲裁中心

org.springframework.boot    spring-boot-starter-parent    2.1.5.RELEASE

在< dependencies >内部导入SpringBoot 的web 启动器

org.springframework.boot     spring-boot-starter-web   

SpringBoot 集成Mybatis 需要导入
Mybatis 启动器
数据库 这里导的时Mysql
连接池 这里导的阿里的

  org.mybatis.spring.boot    mybatis-spring-boot-starter    1.3.3mysql    mysql-connector-java    8.0.12com.alibaba    druid    1.0.31

测试时需要的

   org.springframework.boot     spring-boot-starter-test   

在写代码时常用的一些注解

service 层

@Service("IUserServiceInt") //将业务类交予工厂统一管理//业务控制用于读操作方法上,可提高读写效率@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)//业务控制,用于写操作 可放在类上表示全类 也可放在方法上@Transactional@AutoWired  //用来将spring容器中的实例bean注入到类中,常用在类中属性上,通过type类型注入。@Resource //和上面的注解一样,都是用来注入实例bean到类中的,只不过这个是通过name类型注入。

Controller 层

@Controller  //将Controller类交予工厂统一管理@ResponseBody //把返回值对象自动转换为json字符串并响应回客户端 只接收json@RestController //Controller层注解,@ResponseBody和@Controller的合集@RequestMapping(value = "/FormUserController") //是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。@PostMapping(value = "/registerUser")  //增@GetMapping(value = "/queryUserByPage")  //查@DeleteMapping(value = "/deleteUserByIds") //删@PutMapping(value = "/updateUser") //改   都只能用在方法上用来处理请求地址映射的注解,也对应从客户端传过来的方式!@RequestParam(value = "ids") Integer[] ids  用在方法的参数前面。相当于 request.getParameter();接收表单参数 @RequestOart(value="") //在请求体里同时接收  文件和json @PathVariable("id")  //获取路径中的参数

SpringBoot 测试用到的注解

import static org.junit.Assert.*;// 导断言包@SpringBootTest(classes = {入口类名.class})@RunWith(SpringRunner.class)public class UserServiceTest {    @Autowired    private IUserService userService;    @Test //可直接运行    public void saveUserTest(){        User user = new User("赵小六", true, "123456", new Date(), "aa.png", "qq.com");        userService.saveUser(user);        assertNotNull("用户ID不为空",user.getId()); //下断言,如果user.getId()为空则报错

补充

@Component: 泛指组件,当组件不好归类的时候,我们可以使用这个注解进行 @Repository:  dao(数据库访问层)层注解

Mapper.xml 在idea 设置默认样式

66531fe85f01f1bb7cf4e8bf2437f3ff.png

样式模板

<?xml version="1.0" encoding="UTF-8"?>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/571742.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android插件丢失怎么办,Android studio推荐插件以及升级后插件丢失问题解决

1、android-butterknife-zeleznyandroid-butterknife-zelezny 是根据butterknife定制的一款插件&#xff0c;能够方便快速初始化&#xff0c;对于我来说是开发必备&#xff0c;本人也对此插件进行了一些优化&#xff0c;个人感觉用起来更爽 &#xff0c;博客地址&#xff1a;Bu…

软工团队 - 系统设计

软工团队 - 系统设计 修改完善需求规格说明书 针对栋哥在上周答辩中主要提到问题的相应改动 管理员层面没有在需求中得到很好的体现。没有手机号验证。那时候回答的比较含糊orz&#xff0c;所以在这里说明一下对此作出的解释和修改。 对于第一点&#xff0c;我们讨论的结果是至…

python decimal_python学习笔记一

1、~4不太明白、右移、左移整体移动添加零2、注意运算符&#xff0c;3、1<<5&716&704、set中的pop() 方法用于随机移除一个元素。字典中&#xff1a;list中5、Python dir() 函数dir()函数不带参数时&#xff0c;返回当前范围内的变量、方法和定义的类型列表&…

java基础基础总结----- Date

前言&#xff1a;其实在学习这个的时候&#xff0c;自我感觉学到什么直接查询API就可以了&#xff0c;没有必要再去研究某个方法怎么使用&#xff0c; 重点学习一下经常用到的方法。感觉自己的写的博客&#xff0c;就跟自己的笔记一样&#xff0c;用的是时候&#xff0c;就能快…

pandas object转float_Pandas中文官档~基础用法6

呆鸟云&#xff1a;“这一系列长篇终于连载完了&#xff0c;还请大家关注 Python 大咖谈&#xff0c;这里专注 Python 数据分析&#xff0c;后期呆鸟还会给大家分享更多 Pandas 好文。”数据类型大多数情况下&#xff0c;pandas 使用 Numpy 数组、Series 或 DataFrame 里某列的…

android studio 拉取分支,AndroidStudio中使用Git-高级篇(二)——新建分支(branch)和拉取请求(Pull request)...

前段时间写过一篇文章介绍如何在AndroidStudio使用上传项目到github&#xff0c;今天接着给大家带来了他的高级篇——新建分支(branch)和拉取请求(Pull request)。在真正的开发中我们很少写完代码commit后直接push代码上去&#xff0c;因为这样做没有经过第二个人的审核&#x…

collection转换为list_JAVA 集合 接口继承关系和实现,List,Set,Map(总结)

一. JAVA 集合1.接口继承关系和实现集合类存放于 Java.util 包中&#xff0c;主要有 3 种&#xff1a;set(集&#xff09;、list(列表包含 Queue&#xff09;和 map(映射)。1. Collection&#xff1a;Collection 是集合 List、Set、Queue 的最基本的接口。2. Iterator&#xff…

lazarus开发android应用程序指南,Lazarus开发Android应用程序指南(2)

本指南版权由delphicn所有&#xff0c;QQ&#xff1a;1339838080(tom)&#xff0c;转载请保留版权信息。文中难免有错&#xff0c;欢迎指正。2&#xff0e;编译运行lazarus中的Android示例程序。lazarus安装包中自带示例是在lazarus/examples/androidlcl/androidlcltest.lpi 。…

plsqldevelop安装教程

一、下载并解压压缩包&#xff0c;解压后有如下文件&#xff1a; 二、运行PLSQL Developer10.0.5.1710.exe文件&#xff0c;可以修改文件安装路径&#xff0c;然后一直下一步下一步就可以了; 三、运行软件汉化包PLSQL Developer10.0.5.1710_CHS.exe&#xff0c;不用管一直下一步…

java优先队列_Java高级特性增强-多线程

请戳GitHub原文: https://github.com/wangzhiwubigdata/God-Of-BigData大数据成神之路系列&#xff1a;请戳GitHub原文: https://github.com/wangzhiwubigdata/God-Of-BigDataJava高级特性增强-集合Java高级特性增强-多线程Java高级特性增强-SynchronizedJava高级特性增强-vola…

理解JS的6种继承方式

【转】重新理解JS的6种继承方式 写在前面 一直不喜欢JS的OOP&#xff0c;在学习阶段好像也用不到&#xff0c;总觉得JS的OOP不伦不类的&#xff0c;可能是因为先接触了Java&#xff0c;所以对JS的OO部分有些抵触。 偏见归偏见&#xff0c;既然面试官问到了JS的OOP&#xff0c;那…

android 滚动列表框,建立滚动列表框

另一个可代替一组单选按钮及复选框的是滚动列表框(见图6.9)。使用滚动列表框&#xff0c;你可以建立一个选项列表&#xff0c;用户可以从中选择一个或多个选项。你可以使用建立下拉式列表框的标识符来建立一个滚动列表框&#xff0c;只是使用不同的属性。下面是个例子&#xff…

collection集合 多少钱_面试必备-Java集合框架

Java集合框架面试题常见集合集合可以看作是一种容器&#xff0c;用来存储对象信息。 数组和集合的区别&#xff1a; &#xff08;1&#xff09;数组长度不可变化而且无法保存具有映射关系的数据&#xff1b;集合类用于保存数量不确定的数据&#xff0c;以及保存具有映射关系的数…

html鼠标滚动图片折叠,鼠标滑过图片3D折叠效果

本教程我们将使用CSS3 3D transforms和jQuery来制作一个神奇的3D折叠效果。在我们的demo中&#xff0c;图片在鼠标滑过的时候被折叠&#xff0c;空出来的部分将显示图片的一些信息。我们将创建一个放置图片html结构&#xff0c;当鼠标滑过它时&#xff0c;使用jQuery来将折叠或…

微信小程序开发之普通链接二维码

本文主要介绍扫普通链接二维码打开小程序&#xff0c; 详情请看官方文档https://mp.weixin.qq.com/debug/wxadoc/introduction/qrcode.html 配置普通链接二维码规则 生成二维码 访问https://cli.im/url&#xff0c;将https://test.com/linkcode?id1_2生成二维码图片 小程序接收…

html checked属性值,HTML复选框的checked属性的值是多少?

8种机械键盘轴体对比本人程序员&#xff0c;要买一个写代码的键盘&#xff0c;请问红轴和茶轴怎么选&#xff1f;我们都知道如何在HTML中构成复选框输入&#xff1a;我不知道 - 选中复选框的技术上正确的值是多少&#xff1f;我已经看到了这些工作&#xff1a;答案是无关紧要的…

3位水仙花数计算pythonoj_Python解答蓝桥杯省赛真题之从入门到真题

若发现此文章消失&#xff0c;则是在等待审核中&#xff0c;稍等一会儿即可显示&#xff0c;谢谢。 另外&#xff0c;我会尽量晚上上传更新题目。 此文章太长了&#xff0c;导致MD编辑器很卡&#xff0c;另写了一篇接续 传送门 Python解答蓝桥杯省赛真题之从入门到真题 &#x…

uniapp怎么解析html字符串,uniapp富文本解析插件的详细使用教程

如果你作为文章资源类或者博客类的小程序你就会发现&#xff0c;很多时候你的文章数据都是html格式或md格式&#xff0c;这样如果不经过处理&#xff0c;会非常难看&#xff0c;所以富文本解析就显得格外重要了&#xff0c;今天给大家写一个uniapp怎么使用富文本解析插件的教程…

c++和python有联系吗_Python和C++交互

关键字&#xff1a;Python 2.7&#xff0c;VS 2010&#xff0c;swig OS&#xff1a;Win8.1 with update。 1.下载swig&#xff1a;http://www.swig.org/download.html 2.将swig的路径添加到环境变量Path&#xff0c;例如set pathC:\swigwin-3.0.2。 3.用VS创建一个win32 consol…

html播放切片,[Html/Css]网页切片

简介这篇文章主要介绍了[Html/Css]网页切片以及相关的经验技巧&#xff0c;文章约2269字&#xff0c;浏览量461&#xff0c;点赞数4&#xff0c;值得参考&#xff01;网页切片 前端必须掌握的技能&#xff0c;切片&#xff0c;虽然说难也不难&#xff0c;简单也确实是挺简单的&…