目录
@Repository(“”)
利用注解配置Dao。
@Service(“”)
利用注解配置service。
@Controller
在spring-mvc.xml中添加组件扫描:<context:component base-packe="controller在具体哪个包中">
@RequestMapping
用于反射你方法的地址:@RequestMapping(value="/user/adduser"),
@RequestMapping("user")+@RequestMapping("/add")
@ReponseBody
表示你的这个方法不进行页面跳转
@Autowired
让spring容器来帮你加载你的Service层对象和Dao对象,但要在applicationContext.xml文件中配置bean,然后controller层的set方法就不需要了,dao和service的还是需要。
<!--配置jdbcTemplate对象--> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource"/> </bean> <bean id="roleService" class="com.nkb.service.impl.RoleServiceImpl"> <property name="roleDao" ref="roleDao"/> </bean> <bean id="roleDao" class="com.nkb.dao.impl.RoleDaoImpl"> <property name="jdbcTemplate" ref="jdbcTemplate"/> </bean>
@PathVariable
前端传递参数
前端写法:"${pageContext.request.contextPath}/user/delete/"+userId; 后端写法:@RequestMapping("delete/{userId}") public String delete(@PathVariable("userId") Long userId)
@PathVariable里值的名必须和前端保持一直。
@Transactional(参数)
找到需要配置事务的方法加上
返回数据以及接受数据
springMVC的接受和返回数据以及不用reques和reponse了,开始用ModelAndView来代替,modelandview.addObject()将你查询到的数据返回前端,和Request.setAttribute()方法类似。
用ModelAndView.setViewName(“页面名字”)来进行页面的转发
解决乱码问题
在web.xml文件配置filter,在最上面配置。
<!--配置全局过滤的filter--> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
xml方式实现Aop-切点表达式的写法
Aop通知的类型
基于注解的AOP开发
定义切点表达式:
@Pointcut("execution(* com.nkb.anno.*.*(..))") public void pointcut(){}
使用切点:
@After("MyAspect.pointcut()")
@Around("pointcut()")