java基础学习笔记3(SSM基础)
1. 框架一般都是与配置文件联合使用的,如mybatis,其中配置文件的一个重要作用就是解耦
2.
config.xml-->SqlSessionFactory-->SqlSession-->mapper.xml
除了查询,增删改均需要提交事务,sqlSession.commit()
工具类一般都是使用static静态方法或静态代码块,以及私有静态成员变量
静态代码块相当于一个方法,其被该类首次加载时,即首次用到时自动执行一次,仅这一次。
把参数写死了就叫硬编码
所谓使用框架,就是拷包,拷完包后就可以按框架的规范写代码了。
上面第1条里加载时创建的是所有单例的bean
连接池与jdbc只是创建连接对象方式不同,一个由DataSource对象创建,一个由DriverManage对象创建,然后就都相同了,
当连接对象关闭时,前者是将其返回连接池,后者是直接断开其与数据库的连接,加外前者需要额外的jar包支持。必须保证
创建连接池的代码只执行一次,可以利用工具类进行优化。
学习思路清晰,现在学的是什么东西,什么时候用,什么地方用,有什么用,怎么用,与其他知识点间的关系如何,如:
原生的jdbc,原生的datasource,原生的mybatis,spring+jdbc,spring+datasource,spring+mybatis
重点来了,两种注入方式:
第一种:
第二种:
重点又来了,当@Autowired写在setter()方法上时:
如果:
someBean的otherBean1及otherBean2不会取到值,@Autowired只会使得产生形参对象,并且导致执行该函数体,
即,如果:
则 someBean的otherBean1及otherBean2可以取到值,并且println输出也会执行。
JdbcTemplate是Spring框架中的实现对jdbc进行支持的类,即Spring框架本身中的jdbc解决方案,其是与
DataSource连接池类结合使用的,一般生产上也不会用。
没有使用@Autowired时,一定要有setter()方法,spring会自动找到setter()方法,并结合spring容器尝试进行依赖注入。
SpringMVC可以理解为是Servlet的框架。
WEB-INF中的资源是受保护的资源,只有控制器(controller)才可以访问,所以要在web目录下
建立static文件夹,将jQuery等静态资源放入其中。
@ResponseBody 代表返回的是数据,而且是json格式的数据
<a>标签就不是ajax请求了,要用按钮,调用js函数