![](https://img-blog.csdnimg.cn/2019091813595558.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
4.SSM框架
dsd
多学就会融会贯通
这个作者很懒,什么都没留下…
展开
-
mybatis新知识
动态sql基础foreach 因为通常集合 数组什么的都是以(1,2,3)的形式存在select 。。。 where 字段 in if< test="集合名!=null" > < foreach collection="集合名" item="id" open="(" close=")" separator=",">#{id}</foreach></if>set是在有内容的时候插入到第一个 会把最后一个的逗号给去掉知道select cou原创 2020-05-22 20:57:07 · 265 阅读 · 0 评论 -
整合mybatis
在pom.xml中导包1.junit2.mysql-connector-java 3.spring-jdbc4.spring-webmvc5.mybatis6.spring-framework7.aspectware8.mybatis-spring在config.xml下连接数据库时不同版本mysql驱动包 配置不同1不同版本的驱动网址不同2?后面写的不同版本6以上还...原创 2020-05-04 23:21:44 · 106 阅读 · 0 评论 -
03==缓存
同一个sqlsession对象调用同一个标签,第一次访问数据库,把sql结果缓存到sqlsession缓存区中,之后在访问都是访问缓存区当两次执行sql标签 日志中只会显示一次访问数据库操作 访问缓存的都不会被记录可以看到下面的控制台只有一次记录先去内存的缓存区看有没有要查的,没有就去数据库,再把结果缓存不同的SQL session对象是有不用的缓存空间的 没法交互的访问即使是访问同一个...原创 2020-04-06 12:11:17 · 84 阅读 · 0 评论 -
线程容器
ThreadLocal容器给线程绑定一个OBJECT,只要在同一个线程下,随时可以从线程中拿东西匿名内部类里面的变量必须是FINAL (意味着不可以改变线程==)或者全局的,在这里住主线程是MAIN函数的线程主线程main进行 new Thread又来了个子线程 所以线程 改变了 肯定结果为空总结:只要线程不变 信息是可以互相取的filter和servlet是同一线程希望类被加载的...原创 2020-04-05 23:29:39 · 336 阅读 · 0 评论 -
动态sql
foreach原创 2020-04-06 08:57:36 · 112 阅读 · 0 评论 -
mybatis接口绑定
基础操作mapper.xml和接口同名 统一包下mapper.xml中sql标签名和接口函数名同名这样调用接口方法就相当于调用xml中的sql在全局配置.xml中mapper的映射 写mapper.xml和接口所在包名即可之前业务层用session.selectOne/selectList("mapper完整类名+sql标签名")现在接口类 接口实例化对象InterfaceMapp...原创 2020-04-03 22:55:37 · 144 阅读 · 0 评论 -
Mybatis事物理解session transaction
mybatis底层是对jdbc的封装JDBC中executeUpadate()函数执行增删改,SQL返回int,受影响的行数。mybatis的对应三个sql标签里也没有resultType属性,默认返回值为intmybatis默认关闭了jdbc的自动提交功能每一个sqlsession都默认不自动提交事物要想提交事务,可以session.commit();或者在opensession(...原创 2020-04-01 10:28:10 · 1211 阅读 · 0 评论 -
后台服务器接收前端浏览器参数的方式
@RequestParam 后端获取前端参数的注解有两种形式@RequestParam(`required=true/false defaultValue="1 "`) Integer PageIndex@RequestParam("pageIndex") Integer PageIndex有必须获取 和 默认初始的前端的内容等比如页面前端还没操作的时候 我们默认就是第1页public String commentListView(@RequestParam(required = fals原创 2020-06-28 19:18:42 · 1925 阅读 · 0 评论 -
controller是多例还是单例的?
首先要理解spring bean的含义:在 Spring 中,那些组成应用程序的主体及由 Spring IOC 容器所管理的对象,被称之为 bean。bean的5个作用域simpleprototyperequestsessionglobalsession了解到spring的bean默认都是单例的,第一个问题已经解决了。尽量不要在controller里面去定义属性,如果在特殊情况需要定义属性的时候,那么就在类上面加上注解@Scope(“prototype”)改为多例的模式.因为默认的.原创 2020-06-24 15:51:23 · 357 阅读 · 0 评论 -
springmvc的流程
<mvc:anntation-drivern/>的作用是:用xml配置的时候 IOC容器中必须有处理映射器 和 适配器原创 2020-05-17 14:17:08 · 91 阅读 · 0 评论 -
传统文件上传下载+服务器和浏览器之间编码转换+判断浏览器类型
pom.xml导包 lib更新<dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version> </dependency> <dependency> <g原创 2020-05-17 12:59:29 · 340 阅读 · 0 评论 -
spring的两个动态代理
动态代理jdk/cglib原创 2020-06-30 21:08:42 · 122 阅读 · 0 评论 -
service新知识
标题@Autowired(required=false)@Autowired就是默认的@Autowired(required=true)表示注入的时候,该bean必须存在,否则就会注入失败。@Autowired(required=false):表示忽略当前要注入的bean,如果有直接注入,没有跳过,不会报错。@Transactional(rollbackFor = Exception.class)...原创 2020-05-23 23:00:15 · 119 阅读 · 0 评论 -
aop事物控制小案例
基于xml配置1.导包spring-contextspring-testjunit mysqlaspectweaver2.bean.xml中aop约束dao对象service对象datasource对象transactionManager对象配置aop基于注解的aop配置在bean.xml中放入context约束 写上要扫描的包context-scan pa...原创 2020-05-07 22:38:24 · 135 阅读 · 0 评论 -
JDBCTemplate
其实会了mybatis就行把。。。。。JDBC:Java DataBase Connection 数据库的标准范围导包spring-jdbc 数据源 spring-tx 事物相关mysqlspring-contextjdbcTemplate的作用:用spring内置数据源对象连接数据库DriverManagerDataSource ds=new DriverManagerDa...原创 2020-05-07 22:01:04 · 140 阅读 · 0 评论 -
AOP前言+动态代理
还是那个赚钱的操作 故意放了一个i/0 使编译报错 结果转账的减 收账的没有增没有更新如果希望所有操作都一起成功一起失败我们要使用事务回滚,曾经的简单的转账Dao和service层要求 两者公用同一连接 且在并发运行时线程隔离现在出现问题我们猜测下原因:1.这几个sql语句有谁没有事物,和从前Service一样,需要开启事务2.有事物但是使用的不是同一个事物,无法做到原子性和一致性在...原创 2020-05-02 01:11:51 · 173 阅读 · 0 评论 -
事物(Transaction)+ThreadLocal
在mybatis里面介绍只有在同一线程下 大家才共享同一个资源所以把想要使用统一资源的对象或者希望被大家统一使用的资源放到线程容器里 这样大家都可以共享现在每一个sql语句都会数据源里获取一个与数据库的链接 我们要让事物同一连接大家都是用同一个链接 就要把connecion和当前线程绑定 一个线程只有一个控制事物的对象引言:在转钱的时候如果A转了100 在代码中有错误正常应该无法转让成...原创 2020-05-02 00:20:42 · 983 阅读 · 0 评论 -
junit整合
junit当前测试的时候要先获取1.容器对象 2.service对象然后Test测试service对象调用方法增删改查现在目标是:不希望测试类里还要初始化这两个对象我们不是学了直接从容器中取对象那就那把/Junit原理:程序的入口是main方法Junit没有main方法也能执行,但集成了一个main方法 检测当前测试类里面被@Test注解的方法 就测试Junit无法检测到当...原创 2020-04-30 21:18:27 · 157 阅读 · 0 评论 -
纯注解的配置类代替bean.xml
和bean.xml一样果效的configuration类@Configuration1.要在类上加@Configuration指明当前类是一个配置类现在来一步一步在configurantion中写出以前bean.xml里的语句以前用注解的时候要在xml中指定容器创建的时候spring要扫描的包<context:component-scan base-package="com.it...原创 2020-04-30 20:35:21 · 194 阅读 · 0 评论 -
依赖注入
目前我们经历了一开始new Service()然后我们模拟BeanFactory 通过getBean()的方式获得对象真正使用SPring 的IOC 容器读取文件,返回一个容器对象 然后容器又调用getBean() 返回对象不再是自己new 对象(参数1,参数2)而是在配置文件中配置好了 之后返回一个对象 降低了耦合 那毕竟还是需要又依赖的嘛 否则怎么创建多姿多彩的对象呢?现...原创 2020-04-26 12:47:24 · 265 阅读 · 0 评论 -
SSM框架整合2--前端的表格页面
多个jsp我们通常都放在一个很深的目录下 为了能够不那么麻烦的从当前目录出发获取js等静态资源以服务器名/项目名/在< head>里面写上具体的服务器和项目的路径 <% pageContext.setAttribute("APP_PATH",request.getContextPath());%> <!-- Bootstrap css--> <link href="${APP_PATH}/static/bootstrap-3.3.7-dis原创 2020-07-01 17:33:36 · 317 阅读 · 0 评论 -
ssm面试题整理
spring的优点:spring易于集合其他框架spring的核心spring我经常用到的两个核心就是IOC 和 AOPIOC主要是负责维护管理对象和解耦底层:ioc的底层是一个MAP容器 使用工厂模式BeanFactory Properties读取配置文件形成流通过property.getProperty("beanID")获得当前bean的全限定类名,根据Class.forName()进行反射,获取对象bean,再put进入map用法:在配置文件中配置bean标签 使用class属性以原创 2020-06-21 17:09:29 · 388 阅读 · 0 评论 -
SSSM2---分页查询-pagehelper
pom.xml中导入依赖<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.0.0</version> </dependency>mybatis-config.xml中配置plugin <.原创 2020-06-13 21:22:37 · 230 阅读 · 0 评论 -
SSM基础整合1--搭建环境
maven依赖1.搭建maven环境后选择add framework 设置为web模式2.设置的Build/BuildTools/Maven 中maven仓库的配置pom.xml导jar包(坐标/依赖)依次根据框架需要导入对应jar包spring 导入spring-jdbc spring-aspectspring-mvc导入spring-mvc servlet-api jstl junitmybatis导入mybatis mybatis-spring数据库导入mysql驱动 c3原创 2020-06-09 23:16:08 · 197 阅读 · 0 评论 -
ajax+bootstrap的常用小组件
200:正常404:访问的资源不存在 (访问地址输入错误/真的资源没了)403:没有请求权限500:服务器代码错了jquery的资源首先要导入<script src="路径"/>-<input type=" " name=" " value=" " id=" " >name是可以和服务器代码对应id是在jsp中被其他的调用 value是在页面显示的时候$("#XX")获取指定id的对象 比如input标签等alert("HTML: " + $("#test"原创 2020-06-05 18:08:49 · 200 阅读 · 0 评论 -
pom.xml
修改更新 新增依赖去 lib 重新导入所有包静态资源过滤<build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include>原创 2020-05-16 10:33:51 · 101 阅读 · 0 评论 -
spring-mvc
project structers 下新建lib 导入所有包修改更新 新增依赖去 lib 重新导入所有包spring的appliactionContext.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"原创 2020-05-16 10:33:42 · 120 阅读 · 0 评论 -
spring-service
resources下的spring-service.xml约束<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/sc原创 2020-05-16 10:14:11 · 488 阅读 · 0 评论 -
spring-dao.xml+mybatis.-config.xml
1. resources 下数据库配置文件database.propertiesjdbc.driver=com.mysql.cj.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/ssm?useSSL=false&serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=CONVERT_TO_NULL&useUnicode=true&characterEncoding=UTF-8原创 2020-05-16 10:01:46 · 411 阅读 · 0 评论 -
ssm整合要的小问题
properties文件中配置数据源属性jdbc.driver=com.mysql.cj.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/ssm?useSSL=false&serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=CONVERT_TO_NULL&useUnicode=true&characterEncoding=UTF-8&allowPublicKey原创 2020-05-14 19:47:01 · 129 阅读 · 0 评论