SpringMVC应用:笔记

孤人 提交于 2020-01-20 18:15:59

1、SpringMVC实现RESTful风格:@PathVariable注解的使用。

2、SpringMVC返回字符串结果,并解决中文乱码问题。

3、Spring引入多个xml配置文件。

4、注解:@ Controller、@Service、@Repository、@Component的区别。

5、注解:@Autowired、@Resource、@Qualifier的区别和使用。

6、Spring MVC 转发和重定向。

 

1、SpringMVC实现RESTful风格:@PathVariable注解的使用

使用@PathVariable注解,在其中指定参数的key名称,并映射在后面定义的形参上。

@RequestMapping(value = "/getStaff/{id}",method = RequestMethod.GET)
public StaffInfo getStaffInfo(@PathVariable("id") int staffId)
{
    // 忽略其他代码...
}

 

2、SpringMVC返回字符串结果,并解决中文乱码问题

/**
 * SpringMVC返回字符串结果,并解决中文乱码问题
 */
@RequestMapping(value = "getUserName",produces = "text/text;charset=UTF-8")
@ResponseBody
public String getUserName()
{
    String userNmae = "您好,欢迎访问pan_junbiao的博客";
    //返回结果
    return userNmae;
}

 

3、Spring引入多个xml配置文件

当在项目中有多个Spring配置文件,如下图:

方式一:在web.xml中通过<context-param> 标签引入

<!--  自定义Spring主配置文件的位置 -->
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:spring/*.xml</param-value>
</context-param>
<!-- 使用ContextLoaderListener初始化Spring容器 -->
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

方式二:在Spring的applicationContext.xml中通过<import/> 标签引入

<import resource="classpath:META-INF/service.xml" />
<import resource="classpath:META-INF/huatuo-service.xml" />
<import resource="classpath:META-INF/db.xml" />
<import resource="classpath:META-INF/huatuo-db.xml" />
<import resource="classpath:META-INF/db-mapper.xml" />
<import resource="classpath:META-INF/huatuo-db-mapper.xml" />
<import resource="classpath:META-INF/webservice.xml" />
<import resource="classpath:META-INF/dubbo.xml" />
<import resource="classpath:META-INF/spring/physicalExamService.xml" />

方式三:在web.xml中通过<context-param> 标签引入中使用逗号分隔

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>
    classpath*:conf/spring/applicationContext_core*.xml,
    classpath*:conf/spring/applicationContext_dict*.xml,
    classpath*:conf/spring/applicationContext_hibernate.xml,
    classpath*:conf/spring/applicationContext_staff*.xml,
    classpath*:conf/spring/applicationContext_security.xml
    classpath*:conf/spring/applicationContext_modules*.xml
    classpath*:conf/spring/applicationContext_cti*.xml
    classpath*:conf/spring/applicationContext_apm*.xml
  </param-value>
</context-param>

 

4、注解:@ Controller、@Service、@Repository、@Component的区别

SpringMVC提供的注解:@Controller、@Service、@Repository、@Component的作用差不多,都是把对象交给spring管理。

1、@Controller:控制器(注入服务)

2、@Service:服务(注入service)

3、@Repository:DAO层(实现dao访问)

4、@Component:把普通pojo实例化到spring容器中,相当于配置文件中的<bean id="" class=""/>

 

5、注解:@Autowired、@Resource、@Qualifier的区别和使用

@Autowired
@Qualifier("staffDaoImpl")

 

6、Spring MVC 转发和重定向

1、转发到服务器内部的请求:在返回的字符串前面加入 “ forward:/ 路径名

2、重定向到 JSP页面:在返回字符串的前面加上 “ redirect:/xxx.jsp

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!