文档章节

SpringMVC+hibernate+mysql环境搭建后测试例中使用的注解总结

f
 fal6112
发布于 2016/04/29 15:22
字数 552
阅读 145
收藏 6

Controller层

@Controller

表明某类是一个controller控制器,xxx-servlet.xml文件里写有扫描语句来扫描指定包,在指定包中找到标有@Controller的类,xxx-servlet.xml文件会将web.xml中拦截的query请求送到Controller层中标有@Controller注解的类进行匹配。

@RequestMapping

用于请求与controller类、方法匹配使用

写法:写在@Controller与定义类中间

@Controller

@RequestMapping("/student.do") 

public class StudentController{

    @RequestMapping(params = "method=add")

     public  String add(HttpServletRequest request, ModelMap modelMap) throws  Exception{
            return  "student_add";
     }
}

调用add()的js方法

function add(){   
    window.location.href="<%=request.getContextPath() %>/student.do?method=add";   

@RequestParam

在SpringMVC后台Controller控制层获取前台页面参数的方式主要有两种,一种是request.getParameter("name"),另外一种是用注解@RequestParam直接获取

例:

Controller层:

@RequestMapping("testRequestParam")     

public String filesUpload(@RequestParam String inputStr, HttpServletRequest request) {     

     System.out.println(inputStr);   

     int inputInt = Integer.valueOf(request.getParameter("inputInt"));   

     System.out.println(inputInt);   

     // ......省略   

    return "index";   

 } 

前端:

<form action="/gadget/testRequestParam" method="post">     

     参数inputStr:<input type="text" name="inputStr">     

     参数intputInt:<input type="text" name="inputInt">     

</form>  

测试:

执行结果:
test1
123

@Autowired

(在Dao层与Service层也使用了该注解)

可以对成员变量、方法和构造函数进行标注,来完成自动装配的工作。

自我总结: @Autowired注解主要使用在定义自己写得Service与dao方法但在实体类中并不需要使用

用法例controller层:

public class StudentController{
     protected final transient Log log = LogFactory.getLog(StudentController.class);      
     @Autowired
     public StudentService studentService;
     //........方法体
}

用法例dao层:

public class EntityDao {
       @Autowired
       private SessionFactory sessionFactory;
     //........方法体       
}

用法例Service层:

public class StudentService {
     @Autowired
     public EntityDao entityDao;
          //........方法体       
}


Dao层

@Repository

@Repository对应数据访问层Bean,按编写规范而言就是用来标注Dao层的说明类型注解,与@Controller平级用法也相同.

@Repository写在Dao类上一行后 xxx-servlet.xml文件通过扫描语句来扫描指定包从而加快扫描速度.

写法: @Repository 或 @Repository("userDao") 或 @Repository( value="userDao")

@Repository(value="userDao")注解是告诉Spring,让Spring创建一个名字叫“userDao”的UserDaoImpl实例。

用法实例:

@Repository("entityDao")
public class EntityDao {
    //.......方法体
}


© 著作权归作者所有

f
粉丝 0
博文 9
码字总数 7163
作品 0
海淀
私信 提问
SpringMVC+hibernate+Mysql环境搭建(二)

(5) 后台代码基本写完了,现在开始写表现层,表现层放在/WEB-INF/view目录下, 主要有student_add.jsp和student.jsp页面 student_add.jsp页面源码如下: <%@ page language="java" content...

fal6112
2016/04/29
71
1
help

我搭建好了一个springmvc+hibernate+MySQL的项目,并且是用myeclipse搭建的,但是我要怎么共享?

dale1105
2015/05/08
3
1
Android 单元测试和 UI 测试初步实践

Android 测试简介 对于大多数 Android 商业项目,基本都是处于高速迭代的开发阶段,这个阶段不仅仅是对项目的开发效率,也对项目的产品质量提出了更高的要求。 通常大型项目都是通过黑盒测试...

猴亮屏
07/23
19
0
BenchMark工具-JMH介绍

JMH是有OpenJDK开发的基准测试(Benchmark)工具。JMH可以为写基准测试和运行测试提供很好的支持。JMH在Concurrent Benchmarks也提供很好的支持,可以说是多功能测试工具。JMH在2013被公布出...

robin-yao
2015/04/29
1K
0
Spring Boot应用的测试——Mockito

Spring Boot可以和大部分流行的测试框架协同工作:通过Spring JUnit创建单元测试;生成测试数据初始化数据库用于测试;Spring Boot可以跟BDD(Behavier Driven Development)工具、Cucumber和...

xiaomin0322
2018/01/12
63
0

没有更多内容

加载失败,请刷新页面

加载更多

利用CSS禁止手机长按出现气泡: 复制、选择等功能

可以用 * ,也可作用于一个div div{  -webkit-touch-callout:none;  /*系统默认菜单被禁用*/  -webkit-user-select:none; /*webkit浏览器*/  -khtml-user-select:none; /*早期浏览...

蓝小驴
52分钟前
7
0
前端的一些雕虫小技,从100%和滚动条说起

1、100%和滚动条 当我们在css中把html和body同时设为100%时,会出现滚动条 html, body { width: 100%; height: 100%; } 原因是html和b...

wphmoon
今天
8
0
电力区块链应用案例【2019】

随着区块链技术的日益普及,出现了大量创业企业尝试使用区块链技术来解决能源与电力行业中存在的问题。在本文中,我们将介绍其中的三个能源区块链项目。 能源行业以价格不透明著称:消费者很...

汇智网教程
今天
12
0
聊聊rocketmq的adjustThreadPoolNumsThreshold

序 本文主要研究一下rocketmq的adjustThreadPoolNumsThreshold DefaultMQPushConsumer rocketmq-client-4.5.2-sources.jar!/org/apache/rocketmq/client/consumer/DefaultMQPushConsumer.ja......

go4it
今天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部