当前位置: 首页 >> Java >> SpringMV注入

SpringMV注入

发表时间:2014-10-29 11:21  |  0条评论  |  点击数:4339  |  作者:jws132

一【实体Entity:与数据库中的表对应
1、spring不会注入entity,使用时需要使用new方法创建实例。

二【repository:数据库操作接口
1、创建接口:

public interface StudentRepository extends
PagingAndSortingRepository{}
2、需要注入时:

@Resource(name = "studentRepository")
//Resource中类名第一个字母小写。
private StudentRepository repository;
3、两种数据库操作方法:
1):

Page findByALikeAndBLikeIgnoreCase(String A,String B, Pageable pageable);
2):

@Query("select student.name from Student student  where student.class.id in (select class.id from Class class where class.name like ?1)")
//?1代表第一个参数
Page findByConditions(String className,Pageable pageable);
说明:1、strdent表的class属性是class表的外键,多对一映射。class属性是实体类型。
    在Student实体中申明

/**
 *学生所在班级。
 */
@ManyToOne
@JoinColumn(name = "class")
private Class class;
    2、搜索班级名类似className的班级的所有学生名。

三【service:服务接口
申明接口,并在service.impl中实现。
需要注入时:

@Resource(name = "studentservice")
private StudentService studentService;

四【service.impl:服务实现
申明实现:
1
@Service("studentservice")
实现service中的接口。

五【controller:控制器
申明:

@Controller
//申明控制器。
@RequestMapping("/a")
//匹配请求路径,第一个/表示根,如果匹配成功,请求由该控制器处理。
//控制器只有第一次调用时加载,全局属性用于所有请求。
@RequestMapping(method = RequestMethod.GET)
@RequestMapping(value = "/b", method = RequestMethod.GET)
//匹配方法,没有value表示匹配/a,有value表示匹配在/a的基础上加上value,即匹配/a/b
//method表示请求类型,如果没有申明,表示匹配所有请求方法,包括GET,POST。

方法参数:

@Valid Student student,BindingResult bindingResult
 
//如果请求参数中包括Student实体属性,会自动封装到对象student中。
 
//然后由bindingResult检测参数是否符合Student实体对属性的规定。
 
//如果不符合
 
//if (bindingResult.hasErrors()) {
 
//    return "/error";
 
//}
 
@RequestParam(value = "result", required = false) String result,
 
//参数result,不是必须的。
 
@PathVariable String id,
 
//路径中的参数,@RequestMapping(value = "/{id}", method = RequestMethod.GET)
 
@PageableDefault(page = 0, size = PAGE_SIZE) Pageable pageable,
 
//默认首页,页面大小为PAGE_SIZE。
 
Model model
 
//将处理结果数据封装到model,传给页面显示
 
//model.addAttribute("page", page);
 
//model.addAttribute("pageable", pageable);

返回页面:

return "/show"
//显示根目录下的show.ftl页面
//页面可以获得model中的数据,组装成html页面,返回给客户端。
return "/a/b"
//服务器端重定向到/a/b页面(客户端url不会改变)。
return "redirect:/a/b"
//客户端重定向到/a/b页面(客户端url改变)。

网友评论 0条评论
  
  • 全部评论
  • 站主信息
网名:小白 | ゞ_Shuつ
姓名:蒋文书
生日:1990-05-22
籍贯:浙江省—温州市
现居:北京市—昌平区
职业:网站设计、网站制作。今后想成为一名高级程序员
爱好:研究java,php编程,打球,唱歌,登山。
喜欢的书:《红与黑》《红楼梦》
喜欢的歌手:黄家驹 Rain 六哲
网站信息:本站正在完善中下步会新增用户中心预计完成在7月中旬
  • 热门关注
  • 资深旅游达人,走南闯北,半年写完超长游记...

  • 资深旅游达人,走南闯北,半年写完超长游记...

  • 资深旅游达人,走南闯北,半年写完超长游记...

  • 最新评论
    暂无数据
  • 【聚会】22日跟大闽网友一起看世界杯,小龙虾啤酒通通免费吃...[详细]

  • 【福利】带孩子玩水不要钱!50份白水洋套票免费送了...[详细]

  • 【福利】熬夜看球太累太伤?没关系!养生粤菜免费吃起来...[详细]

  • 【独家】送福利来了,空调挂机免费清洗,快来回帖报名吧...[详细]

  • 【独家】猜世界杯冠军,8套1088元纯金纪念钞免费送! ...[详细]

Copyright © 2013-2016 . 蒋文书个人博客 版权所有 浙ICP备16006289号