自己Springmvc复习(一)springmvc基础

一、springMVC基础
1.入门程序:

(1)前段控制器的配置:在web-info下面的web.xml文件

springmvc org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:springmvc.xml springmvc *.action (2)建立ItemController层,相当于Struts的action,新建一个类, @Controller public class ItemController { @Autowired private ItemsService is; @RequestMapping("/Items.action") //指定映射路径,在浏览器中显示的URL后缀 public ModelAndView itemList() { // 创建页面需要显示的商品数据 List list = is.selectItemsList(); ModelAndView mav =new ModelAndView(); mav.addObject("itemList",list); mav.setViewName("itemList"); return mav; } (3)创建springmvc.xml配置文件 在ItemController类前面添加@Controller注解,并且在xml扫描ItemController注解: ,扫描以com.itheima开头的所有包。 (4)逆向工程生成pojo包,完成controller层的添加代码 ![在这里插入图片描述](https://img-blog.youkuaiyun.com/2018101115560120?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1N0cmVhbWxpbmVXcQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) **2.springmvc配置三大组件** (1)处理器映射器 (2)处理器适配器 (3)注解驱动(可以取代上面的(1)(2)) (4)视图解析器 //解析jsp页面的名字 //解析jsp文件的后缀:xx.jsp 视图解析器的作用:在controller层的类中,最后一句mav.setViewName("itemList");,("itemList")当中表示的是当前操作的jsp页面的名字和后缀。 **3.springmvc和mybatis-spring的整合** 新建一个项目 (1)添加整合用的jar包 (2)整合 ![在这里插入图片描述](https://img-blog.youkuaiyun.com/20181011155532918?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1N0cmVhbWxpbmVXcQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

:将mybatis整合完毕的三个文件加上springmvc文件拷贝,
:修改db中的数据库名称,
:applicationContext.xml文件当中保留Mapper动态代理开发扫描,将基本包下面的value修改成springmvc.dao,
:在sqlMapConfig中修改别名,删除标签
(3)在web.xml中添加Spring的监听器,

contextConfigLocation
classpath:applicationContext.xml


org.springframework.web.context.ContextLoaderListener

(4)在web.xml文件中设置读取spring.xml文件的代码
将前端控制器的代码拷贝进web.xml文件当中
(5)注解事务





<tx:annotation-driven transaction-manager=“transactionManager”/>
4.从数据库中查询商品
1.创建ItemService和ItemServiceImpl层,新建方法public ListselectItemsList(){
return im.selectByExampleWithBLOBs(null);
}
2.在controller层,加入注解,
@Autowired //采用该注解,可以直接调用ItemsService 层,
private ItemsService is;
在类中完成代码完成查询:
List list = is.selectItemsList();
ModelAndView mav =new ModelAndView();
mav.addObject(“itemList”,list);
mav.setViewName(“itemList”);
return mav;

5.参数绑定的三种类型
1.默认参数绑定
(1)在service中新建一个方法ItemsEdit用来修改商品信息
(2)新建一个根据id修改商品信息的类
public ModelAndView ItemsEdit(HttpServletRequest request,HttpServletResponse response,HttpSession session,Model model ) { //servlet最原始的绑定
String id=request.getParameter(“id”);
Items items=is.selectItemsById(Integer.parseInt(id));
ModelAndView mav = new ModelAndView();
mav.addObject(“item”,items);
mav.setViewName(“editItem”);
return mav;
}

2.简单类型
	方法跟上面的一样,只是类的形参多加了一个Integer,
	public ModelAndView ItemsEdit(Integer id,HttpServletRequest request,HttpServletResponse response,HttpSession session,Model 										  model	)	{         //servlet最原始的绑定
		
		Items items=is.selectItemsById(id);
		ModelAndView mav = new ModelAndView();
		mav.addObject("item",items);
		mav.setViewName("editItem");
		return mav;
	}
3.POJO
	(1)新建方法修改信息,入参用的是一个POJO对象
	public void updateItemsById(Items items) {
		im.updateByPrimaryKeyWithBLOBs(items);
	}

5.解决POST提交乱码问题
在web.xml文件中添加如下代码:

encoding
org.springframework.web.filter.CharacterEncodingFilter

encoding
UTF-8



encoding
*.action

6.参数绑定之包装类POJO
(1)在POJO包下面创建QueryVo类,里面定义一个items对象,完成get和set方法
private Items items;
public Items getItems() {
return items;
}
public void setItems(Items items) {
this.items = items;
}
(2)将controller类中的入参Items items改为QueryVo vo,
(3)将jsp网页上面的input里面的name属性前面添加一个items.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值