Spring(六): Spring Aware 通过 Bean 获取容器的服务

  项目中,当需要用到Spring容器本身的功能资源时,Bean就需要知道容器的存在,才能调用 Spring 所提供的资源,而 Spring Aware就是提供这样的功能,原本也是给 Spring 框架内部使用的。

  Spring Aware 的目的就是为了让 Bean 获取容器的服务。ApplicationContext接口集成了MessageSource接口,ApplicationEventPublisher接口和ResourceLoader接口,如果让 Bean 继承 ApplicationContextAware可以获得 Spring 容器的所有服务,但原则上有用到什么接口,再实现该接口。   

阅读更多

EL表达式与JSTL标签库

JSP 页面中经常用到EL表达式和JSTL标签库。

EL表达式主要作用:获取数据执行运算获取Web常用隐式对象

EL表达式以${}结构表示;取值从左到右,如果需要文件${,在前面加转义符\${

阅读更多

JSP四大作用域和九个内置对象

  四大作用域的作用是为了实现页面和服务器共享数据。

  1. page:设置的属性令在当前页面有效。实际开发中较少使用,作用域太小了。
  2. request:属性仅在本次请求有效。
  3. session:令在浏览器和服务进行本次会话有效,当和服务器断开后,属性失效。
  4. application:属性在整个WEB应用中都有效,直到服务器停止才失效。实际开发中几乎不使用,作用域太大了。

  四大作用域分别都有设置和获取属性的两个方法:setAttribute()getAttribute()

阅读更多

MyBatis:动态SQL与参数绑定(#{} 和 ${})

MyBatis 的强大特性之一便是它的动态 SQL,Mybatis 在对 SQL 语句进行预编译之前,会对 SQL 进行动态解析,解析为一个 BoundSql 对象,同时对动态 SQL 进行处理。

动态 SQL 主要通过OGNL表达式实现 SQL 可以动态判断和选择参数。

阅读更多

SSM 整合之配置文件

  SSM整合之配置文件:

  1. pom.xml,web.xml
  2. jdbc.properties
  3. log4j.properties
  4. springmvc.xml
  5. sqlMapConfig.xml
  6. applicationContext-dao.xml
  7. applicationContext-service.xml
  8. applicationContext-shiro.xml
阅读更多

MyBatis:理解 mapper.xml 文件和使用

1
2
3
4
5
6
7
8
9
<mapper namespace="org.mybatis.mapper.UserMapper">
<!-- useGeneratedKeys:返回主键
keyProperty:返回的主键对应实体类的属性字段
-->
<insert id="saveUser" parameterType="com.mybatis.domain.User" useGeneratedKeys="true" keyProperty="id">
insert into user values(#{id},#{username},#{birthday},#{sex},#{address})
</insert>

</mapper>
  1. mapper:指定唯一的namespace,一般设置成mapper类的全路径名。
  2. insert:对应SQL中的insert插入语句。
    id:为该语句的属性,通常与mapper java 文件的方法名相同。
    parameterType:参入插入语句的参数类型。
    useGeneratedKeys:主键使用数据库自增策略,需要数据库底层支持,并返回主键到keyProperty指定的属性名。
    keyProperty:指示主键映射到实体类的属性名。
阅读更多

MyBatis:CRUD 注解配置

  CRUD注解:@Select,@Insert,@Update,@Delete
  配置项注解:@Options
  参数绑定注解:@Param, 将传入方法的参数绑定到 SQL 语句的参数上。
  **结果映射注解: **@Results—— 结果映射列表;@Result—— 在列和属性或字段之间的单独结果映射。

阅读更多