springmvc注解

SpringMVC常用注解@Controller,@Service,@repository,@Component

别等时光非礼了梦想. 提交于 2020-01-02 16:40:25
spring注解的作用: spring作用在类上的注解有:@Component、@Responsity、@Service以及@Controller; 而@Autowired和@Resource是用来修饰字段、构造函数或者设置方法,并做注入的。 当注解作用在类上时,表明这些类是交给spring容器进行管理的,而当使用@Autowired和@Resource时,表明我需要某个属性、方法或字段,但是并不需要我自己去new一个,只需要使用注解, spring容器会自动的将我需要的属性、方法或对象创造出来。这就是通 所说的依赖注入和控制反转。 controller层使用@controller注解 @Controller 用于标记在一个类上,使用它标记的类就是一个SpringMVC Controller 对象。分发处理器将会扫描使用了该注解的类的方法。通俗来说,被Controller标记的类就是一个控制器,这个类中的方法,就是相应的动作。 @RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。 比如图一中,跳转到登录页面的路径就是localhost:8080/xxx/ payInfo /xxx service采用@service注解 例:@Service注解:默认名称是类名(头字母小写),可以

SpringMVC的json交互

我是研究僧i 提交于 2020-01-02 00:26:22
一、注解说明 1、@RequestBody  作用:@RequestBody注解用于读取http请求的内容(字符串),通过springmvc提供的HttpMessageConverter接口将读到的内容转换为json、xml等格式的数据并绑定到controller方法的参数上。 2、@ResponseBody  作用:@ResponseBody注解用于将Controller的方法返回的对象,通过HttpMessageConverter接口转换为指定格式的数据,如json、XML等,通过response响应给客户端。 二、请求json,响应json 1、加入jar包  springmvc默认使用MappingJacksonHttpMessageConverter对json数据进行转换,需要加入jackson的jar包。 2、配置json转换器   第一种方式:使用注解适配器的配置方式。 <!--注解适配器 --> <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"> <property name="messageConverters"> <list> <bean class="org.springframework.http.converter

springMVC json

一笑奈何 提交于 2020-01-02 00:26:08
现在,在网页开发中,AJAX局部更新必不可少,在springMVC中为开发者提供了一种简洁的实现不同数据格式交互的机制(JSON,xml),springMVC主要利用类型转换器(mrssageConverters)将前台信息转换成开发者需要的格式。然后在相应的Controller方法接收参数前添加@requestBody注解,进行数据转换,或者在方法的返回值类型处添加@ResponseBody注解,将返回信息转换为相关格式的数据。 1.导包 jackson-core-asl.jar jackson-mapper-asl.jar 2.编写Controller方法 @Controller public class JsonController { @RequestMapping(value="json.action") @ResponseBody public String jsonController(@RequestBody String data){ System.out.println(data); return data; } } 3.编写jsp文件 <textarea id="jsonArea" placeholder="请输入json文本" style="width: 300px; height: 200px;"></textarea><br /> <button

SpringMVC json

不羁的心 提交于 2020-01-02 00:25:58
之前写过struts2对json的支持------参考我的 http://www.cnblogs.com/tele-share/p/7192206.html 接下来说说SpringMVC对json的支持 准备工作:导入jackson-core-asl-1.9.11.jar和jackson-mapper-asl-1.9.11.jar两个jar包(当然还有SpringMVC的包) jsp页面 1 <script type="text/javascript"> 2 $(":button:eq(0)").click(function() { 3 var url = "${pageContext.request.contextPath}/emp/bean2json.action?time=" + new Date().getTime(); 4 var data = null; 5 $.post(url,data,function(backData,textStatus,ajax) { 6 alert(ajax.responseText); 7 alert(new Date(backData.hireDate).toLocaleString()); 8 }); 9 }); 10 </script> 后台控制器 使用@ResponseBody注解

SpringMVC填坑之旅-返回json数据

醉酒当歌 提交于 2020-01-02 00:25:40
本文是自己开发中所遇到的问题,对一些及百度到的解决方案做一个记录。 DispatcherServlet配置文件 <!-- 定义跳转的文件的前后缀 ,视图模式配置--> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <!-- 这里的配置我的理解是自动给后面action的方法return的字符串加上前缀和后缀,变成一个 可用的url地址 --> <property name="prefix" value="/WEB-INF/jsp/" /> <property name="suffix" value=".jsp" /> </bean> 每次返回数据都被拦截返回成jsp文件,在控制器的方法上添加@ResponseBody注解解决返回页面问题; 页面接收json数据报错: The resource identified by this request is only capable of generating responses with characteristics not acceptable according to the request "accept" headers. 解析类型不正确(自己理解) 配置注解及添加jar包解决:

SpringMVC 返回json

笑着哭i 提交于 2020-01-02 00:25:08
1.页面传递json数据,ajax传递 jsp <script type="text/javascript"> $(document).ready(function(){ $("#add").click(function(){ var userName = $("#userName").attr("value"); var age =$("#age").attr("value"); var user = {userName:userName,age:age}; $.ajax({ url:"/springMVC1/test/json/addUser", type:"post", data:user, success:function(a){ alert("userName:" + a.userName + " age:" + a.age ); } }); }); }); </script> </head> <body> 姓名:<input type="text" id="userName" name="userName"><br> 年龄:<input type="text" id="age" name="age"><br> <input type="button" id="add" value="添加"> </body> controller @Controller

springmvc后台接前端的参数,数组,集合,复杂对象等

送分小仙女□ 提交于 2020-01-02 00:19:38
springmvc后台接前端的参数,数组,集合,复杂对象等 参考地址:https://blog.csdn.net/feicongcong/article/details/54705933 常用的几种方式如下: 前端使用jquery向后台传递数组类型的参数,Java后台直接通过List类型接收,会发现无法取到参数。 如果后台非要用List接收参数的话,可以这样实现: POST方法时Java后端使用@RequestBody注解接收参数 $.ajax{ url:"xxxx", type : 'POST', dataType:"json", contentType:"application/json", data: JSON.stringify(["123", "456"]), ...... } 后台 @RequestMapping("/getEventData") public void getEventData(@RequestBody List<String> areaList) { // TODO } (1)数组: 后台 @ResponseBody @RequestMapping(value = "/ajaxsortPriority") public ResultDo ajaxsortPriority(@RequestParam("ids[]") Long[] ids) {

自定义SpringMVC拦截器中HandlerMethod类型转换问题调研

半世苍凉 提交于 2020-01-01 23:39:58
摘要 在将a模块迁移到spring boot项目下、使用embeded tomcat启动项目后,在调用RESTfule接口时,模块中声明的一个SpringMVC拦截器"cn.xxx.thread.common.web.speedctrlforuser.SpeedctrlForUserInterceptor"中抛出了ClassCastException。但是使用外置Tomcat启动就没有这个问题。在逐行debug后发现是spring boot缺失一项配置导致了这个问题。 问题 在 TECHSTUDY-91 - THREAD模块接入服务注册/订阅服务 进行中 任务中,我为a模块定义了一个启动类(注解了@SpringBootApplication),并配置了对应的application.properties。由于目前只需要注册到eureka上,配置文件中只有如下两行配置: applictaion.properties spring.application.name=a eureka.client.serviceUrl.defaultZone= http://10.255.33.207:8080/eureka,http://10.255.33.208:8080/eureka,http://10.255.33.209:8080/eureka 在其它配置(如maven依赖关系

SpringMVC基础配置及使用

℡╲_俬逩灬. 提交于 2020-01-01 22:34:23
SpringMVC: 1.SpringMVC和Spring的关系: 软件开发的三层架构: web层【表示层、表现层】---->Service层---->Dao[DataBase Access Object]---->数据库! SpringMVC实际上是Spring的一个子模块,我们用SpringMVC来代替这个JavaWEB部分! MVC:也是一种设计模式:M:Model【模型】-->V[View]--->C[Controller]! Model用来封装数据的,View:用来显示数据 Controller:用于接收前端页面发送的请求,然后调用Service层处理,拿到处理结果,将该结果返回给前端页面! SpringMVC:相当于MVC架构中的C以及V! 2.SpringMVC有什么优势? Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一。 Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架。 Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任何接口。 支持 REST 风格的 URL 请求(包含以下操作)。 GET POST PUT DELTE 采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性. 目前主流的开发软件,说白了,大家都在用! 3

SpringMVC入门——基础知识

女生的网名这么多〃 提交于 2020-01-01 22:34:04
SpringMVC入门——基础知识 1.MVC 的 Handler (Controller)方法可以接受哪些 ServletAPI 类型的参数: HttpServletRequest HttpServletResponse HttpSession @RequestMapping(value="abc",method=RequestMethod.POST) public void abc(HttpServletRequest request,HttpServletResponse response){ response.setHeader("content-Type", "text/html;charset=utf-8"); String username = request.getParameter("username"); System.out.println(username); try { response.getWriter().println(username); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } 2.重定向与转发 一般情况下,控制器方法返回字符串类型的值会被当成逻辑视图名处理 如果返回的字符串中带 forward: 或