`

新手研究spring mvc框架

阅读更多

 

      大家好,刚把javaee学完,接着趁热打铁学框架,这是我搭建的一个spring框架,搭的不好的地方请大家指点,,我用的spring2.5的jar,听说这个版本比较稳定,下面介绍我的框架是怎么搭建的

 

1.新建一个web工程,工程名称是spring

2.导入相应的springjar文件

3.在src目录下建立相应的包

(1)

 com.spring.dao 新建一个MemberDao接口

 

package com.spring.dao;

import java.util.List;

import com.spring.model.MembersModel;

/**
 * @author Administrator
 *
 */
public interface MemberDao {

	/**
	 * 获取所有用户列表
	 * @return
	 */
	public List<MembersModel> findAllMembersModels();
}

 

 com.spring.dao.imp 新建一个MemberDaoImpl 实现类

 

package com.spring.dao.impl;

import java.util.List;

import org.springframework.jdbc.core.simple.SimpleJdbcDaoSupport;

import com.spring.dao.MemberDao;
import com.spring.model.MembersModel;

/**
 * @author Administrator
 *
 */
public class MemberDaoImpl extends SimpleJdbcDaoSupport implements MemberDao {

	/* (non-Javadoc)
	 * @see com.spring.MemberDao#findAllMembersModels()
	 */
	public List<MembersModel> findAllMembersModels() {
		// 去数据库里查询
		//sql....
		return null;
	}

}

 

 com.spring.dao.model 新建一个MembersModel类

package com.spirng.model;

/**
 * @author Administrator
 *
 */
public class MembersModel {
	private String id ;
	private String logonname;
	private String logonpassword;
	
	public MembersModel(){

	}
	
	public MembersModel(String id,String logonname,String logonpassword){
		this.id=id;
		this.logonname=logonname;
		this.logonpassword=logonpassword;
	}
	public String getLogonpassword() {
		return logonpassword;
	}
	public void setLogonpassword(String logonpassword) {
		this.logonpassword = logonpassword;
	}
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getLogonname() {
		return logonname;
	}
	public void setLogonname(String logonname) {
		this.logonname = logonname;
	}
}

 

 

 com.spring.service 新建一个MemberService接口

package com.spring.service;

import java.util.List;

import com.spring.model.MembersModel;

/**
 * @author Administrator
 *
 */
public interface MemberService {
	/**
	 * 返回所有用户列表
	 * @return 用户列表
	 */
	public List<MembersModel> findAllMembersModels();
}

 

 com.spring.service.impl 新建一个MemberServiceImpl实现类

package com.spring.service.impl;

import java.util.List;

import com.spring.dao.MemberDao;
import com.spring.model.MembersModel;
import com.spring.service.MemberService;

/**
 * @author Administrator
 *
 */
public class MemberServiceImpl implements MemberService {
	
	private MemberDao memberDao;
	

	public void setMemberDao(MemberDao memberDao) {
		this.memberDao = memberDao;
	}


	/* (non-Javadoc)
	 * @see com.spring.service.MemberService#findAllMembersModels()
	 */
	public List<MembersModel> findAllMembersModels() {
		// TODO Auto-generated method stub
		return memberDao.findAllMembersModels();
	}

}

 

 com.spring.web.controller 新建一个MemberController 控制类

 

package com.spring.web.controller;

import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.bind.ServletRequestBindingException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;

import com.spring.model.MembersModel;
import com.spring.service.MemberService;

/**
 * @author Administrator
 *
 */
public class MemberController extends MultiActionController {

	private MemberService memberService;
	
	
	
	public void setMemberService(MemberService memberService) {
		this.memberService = memberService;
	}



	public ModelAndView memberList(HttpServletRequest request,HttpServletResponse response) throws ServletRequestBindingException{
		//查询数据库了
		
		List<MembersModel> list = memberService.findAllMembersModels();
	
		
		return new ModelAndView("MemberList").addObject("memberlist", list);
	}
}

 

以上就是我src下的结构,遵循spring的mvc模式

 

4.修改web.xml文件,进行相应的配置

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
    <!--对WEB-INF下的xml文件进行整合,本来spring就一个配置文件,但是为了可读性,我把他分开了-->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>/WEB-INF/spring-*.xml</param-value>
	</context-param>

	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>


<!-- 把所以页面的字符编码转换成utf-8 -->
	<filter>
		<filter-name>encodingFilter</filter-name>
		<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>utf-8</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>encodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

<!-- 一个页面请求控制器,相当于struts的web.xml的拦截器 -->
	<servlet>
		<servlet-name>court</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>court</servlet-name>
		<url-pattern>*.htm</url-pattern>
	</servlet-mapping>

</web-app>

 

5.在WEB-INF下配置spring的配置文件

为了增强配置文件的可读性,新生容易理解一点,我这里把配置文件分开了,有些配置文件是空的,主要为了以后业务拓展

(1)Copy of court-servlet.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	   xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"
	   default-autowire="byName">
	
	
	
	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/WEB-INF/jsp/"></property>
		<property name="suffix" value=".jsp"></property>

	</bean>
	
	
	
	

	<bean id="simpleUrlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
		<property name="mappings">
			<props>
				<prop key="/MemberList.htm">memberController</prop>

			</props>
		</property>
	</bean>
	

	
	
	
	<bean id="memberController" class="com.spring.web.controller.MemberController">
		<property name="methodNameResolver">
			<bean class="org.springframework.web.servlet.mvc.multiaction.PropertiesMethodNameResolver">
				<property name="mappings">
					<props>
						<prop key="/MemberList.htm">memberList</prop>
				
					</props>
				</property>
			</bean>
			
		</property>
	
	</bean>

</beans>

  (2)spring-dao.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	   xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd" 
	   default-autowire="byName">
	
	
    <bean id="memberDao" class="com.spring.dao.impl.MemberDaoImpl"></bean>
</beans>

 

  (3)spring-dwr.xml

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr"
	xsi:schemaLocation="
		     http://www.springframework.org/schema/beans 
		     http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
	         http://www.directwebremoting.org/schema/spring-dwr
	         http://www.directwebremoting.org/schema/spring-dwr-2.0.xsd"
	         default-autowire="byName">


</beans>

 

  (4)spring-persistence.xml

 

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="
		     http://www.springframework.org/schema/beans 
		     http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
	         http://www.springframework.org/schema/aop 
	         http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
	         http://www.springframework.org/schema/tx 
	         http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"
	         default-autowire="byName">
	<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">  

		<property name="driverClass" value="oracle.jdbc.driver.OracleDriver" />  
		<property name="jdbcUrl" value="jdbc:oracle:thin:@10.2.151.137:1521:orcl" />  
		<property name="user" value="dexs" />  
		<property name="password" value="dexs" /> 
	 
	 <!-- 
		<property name="minPoolSize" value="10" />  
		<property name="maxPoolSize" value="20" />  
		<property name="maxIdleTime" value="1800" />  
		<property name="acquireIncrement" value="2" />  
		<property name="maxStatements" value="0" />  
		<property name="initialPoolSize" value="2" />  
		<property name="idleConnectionTestPeriod" value="1800" />  
		<property name="acquireRetryAttempts" value="30" />  
		<property name="breakAfterAcquireFailure" value="true" />  
		<property name="testConnectionOnCheckout" value="false" />  
	 -->
	</bean>
	
	<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" ></bean>

</beans>

 

  (5)spring-service.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	   xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"
	   default-autowire="byName">
	
	
	<bean id="memberService" class="com.spring.service.impl.MemberServiceImpl"></bean>

</beans>

 

  (6)views.xml

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="
		     http://www.springframework.org/schema/beans 
		     http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
		     

</beans>

 7.部署工程,进行测试

 

 感谢大家对我支持

分享到:
评论

相关推荐

    spring3mvc导入包

    spring3mvc导入包大全。里面拥有spring3MVC框架搭建的必备包。新手学习spring3必备

    spring mvc案例+配置+原理详解+架包

    适合新手了解认识spring mvc,和搭建spring mvc 框架

    基于Spring MVC 和 WxJava 实现的微信公众号Java后端Demo

    本Demo使用Spring MVC 框架实现微信公众号开发功能。 本项目为WxJava的Demo演示程序,更多Demo请 查阅此处。 如果想支持多公众号,请参考spring boot版本的demo:...

    Spring mvc环境搭建所需jar包

    对于刚接触Spring mvc的朋友来说是最合适不过的,以前在开发Spring mvc时需要在网上零零散散的下载相关工具jar包,现在我基本集合在这里了,方便新手搭建spring mvc框架。

    spring MVC + spring的框架

    有一些新手对spring不太熟悉,搭建一个可以直接使用的框架结构大家一起来使用,maven

    简单的spring+spring mvc+mybaties(ssm) maven框架,适合新手学习!

    简单的spring+spring mvc+mybaties(ssm) maven框架,比较适合新手学习! 基本的配置都配好了,maven项目,简单实现了登陆功能,写了下后台页面,查询所有的用户,数据库用的mysql

    itellij idea创建spring mvc工程

    java版本是1.8, idea版本是2020.1 win7 64位版本,tomcat版本是9 亲测可用。适合新手。 教程地址 https://www.cnblogs.com/tochw/p/13811051.html

    spring+spring Mvc+mybatis+layui实现数据表格的增删改查

    这是通过ssm+layui 实现的简单的对数据表格的增删改查,所有页面纯由layui实现。如果你是新手学习layui,那这个绝对会对你有很大的帮助; 如果你之前已经学过甚至已经使用过,那这个可以当做一个参考

    SSM框架样例(spring,spring-mvc,mybatis)

    本例子为一个基础样例,为Spring-mvc、spring、mybatis三大框架的整合例子,便于新手学习

    springMVC入门教程

    适合新手自学入门,Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构, 可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架。

    Spring-Spring mvc-MyBatis

    详细介绍了如何搭建spring、springmvc、mybatis 框架,教程非常详细,适合新手用来学习使用

    Spring3.22Mvc示例

    spring 3.22版本搭建的mvc框架,新手可下载看看。

    spring(mvc) + hibernate 框架例子

    本例子代码简单。有简明的注释,对于新手,容易看明白。使用了spring的mvc,和hibernate。

    SSM框架整合示例代码-XML配置文件方式(SPRING4 + SPRING MVC + MYBATIS3.4.4)

    适合学习SSM的新手学习使用。 使用的工具说明: IDE: eclipse4.7 SSM框架版本:Srping4.3.9,MyBatis3.4.4 数据库:MySql5.7.19 数据库脚本:/src/sql/mydb.sql SSM框架版本:Srping4.3.9,MyBatis3.4.4

    spring mvc 项目错误,和一些配置

    新手搭建ssm框架最常出现的错误,springmvc的配置文件,和出错的概率

    springmvc搭建教程(附带源码)

    本源码适合新手学习,简单易懂,它是一个典型的教科书式的mvc构架,而不像struts等都是变种或者不是完全基于mvc系统的框架,对于初学者或者想了解mvc的人来说我觉得 spring是最好的,它的实现就是教科书!...

    Spring Boot学习资料教程.docx

    本教程为笔者学习 Spring Boot 时写的笔记,适合没有接触过此框架的新手。内容非常全面,其中的代码都能运行,笔者都做了验证。本教程是简单笔记记录,从零到一学习 Spring Boot。本教程涉及的知识如下: Hell World...

    SSM框架测试题以及答案解析.docx

    下列关于ModelAndView的说法错误的是( )。 (选择一项) A:控制器处理方法的返回值若为: ModelAndView,则既可以包含视图信息,也可以包含模型数据 信息 B:控制器处理方法的返回值若为: ModelAndView, 在处理方法的...

    SSM(spring+spring-mvc+mybatis)

    使用SSM框架,实现了(登陆,注册,转账,文件的上传下载,记录用户使用的日志跟踪,拦截器)等功能,适合新手研究学习。使用时需要自己在mysql数据库建表,项目中附带一份我自己使用过的mysql数据,有不足的地方还望...

    基于SSM(Spring-SpringMVC-MyBatis)的高级整合(增删改查功能))班级系统

    此资源是基于SSM(Spring+SpringMVC+MyBatis)的高级整合,项目中利用前端框架bootstrap快速搭建简洁优美的界面,进行对mysql的增,删,改,查的基础操作。是一个非常适合新手学习的例子!!班级系统导入可用

Global site tag (gtag.js) - Google Analytics