SSM项目第1讲

用SSM做个最简单的框架,实现简单的相应Hello World

从零到Hello World

新建项目

  1. 打开eclipse,New Dynamic Web Project(首先只需起好名字)
  2. window->preference->validation 将XML Schema validation,XML validation,XSL validation三个选项的勾去掉,加快编译速度。
  3. 工程右击选择properties中Java Build Path添加自己的JRE

配置容器

  1. 直接引入其他工程中的WEB-INF/lib这个库(加入架包)

  2. 右击Window->properties->serve->Runtime Environment,新建(右方的add)一个容器Tomcat(选择你使用的版本)->next->选择你使用的jre(选择你使用的版本)

  3. 右击你的工程文件夹->run as->上方的选new server,下方下拉栏选择上一步配好的容器名->finish

  4. 这时一般会报错,是因为端口重复,这时在serve框中(如果没有在window里面找)找到你的容器双击,在Modify the server ports中改三者端口只要不和其他工程重复。然后保存。

  5. Timeout中超时报错改成很长的一段时间,防止电脑卡顿导致的开启失败。

  • 此处debug可以运行,如果出错请检查

构建框架

1.新建src->com->system(新建名为com.system)框架就在其中构建

  • system
    • controller 控制器包(springmvc)
    • service 服务器包(业务逻辑)
    • mapper/dao 数据库交互包(data access object,数据库的增删改查)
    • entity 模型层实体类(实体类的编写)
      • dto 传参数据传输对象包
      • pojo 数据库对象包(数据库获取到的数据封装为对象)
      • vo 图像对象包
    • common 公共使用包
      • util 工具类
      • constan 常量(define)

配置spring

1.新建src->com->conf(新建名为com.conf)->spring.xml,然后直接添加开头,大概功能是尝试连网,检查spring的配置。

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:context="http://www.springframework.org/schema/context"
	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-3.2.xsd 
		http://www.springframework.org/schema/mvc 
		http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd 
		http://www.springframework.org/schema/context 
		http://www.springframework.org/schema/context/spring-context-3.2.xsd 
		http://www.springframework.org/schema/aop 
		http://www.springframework.org/schema/aop/spring-aop-3.2.xsd 
		http://www.springframework.org/schema/tx 
		http://www.springframework.org/schema/tx/spring-tx-3.2.xsd ">
</beans>

2.在其中添加service类搜索并且加入(写在 之间)

<!-- 扫描标注@Service注解的service -->
<context:component-scan base-package="com.system.service"/>

配置springmvc

1.新建src->com->conf(新建名为com.conf)->springmvc.xml,添加如下代码。添加controller类搜索并且加入

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:context="http://www.springframework.org/schema/context"
	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-3.2.xsd 
		http://www.springframework.org/schema/mvc 
		http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd 
		http://www.springframework.org/schema/context 
		http://www.springframework.org/schema/context/spring-context-3.2.xsd 
		http://www.springframework.org/schema/aop 
		http://www.springframework.org/schema/aop/spring-aop-3.2.xsd 
		http://www.springframework.org/schema/tx 
		http://www.springframework.org/schema/tx/spring-tx-3.2.xsd ">
	<!-- 组件扫描器扫描这一层组要扫描处理器 -->
	<context:component-scan base-package="com.system.controller"></context:component-scan>
	<!-- 配置注解的映射器和适配器以及其他配置 -->
	<mvc:annotation-driven></mvc:annotation-driven>
	<!-- 处理静态资源问题 -->
	<mvc:default-servlet-handler />
	
</beans>

2.在其中添加service类搜索并且加入(写在 之间)

<!-- 扫描标注@Service注解的service -->
<context:component-scan base-package="com.system.service"/>

配置web.xml

==注释:classpath打开工程中build中的classes文件,注意要加com。==

1.打开WebContent->WEB-INF->lib->web.xml可见初始代码

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>mysql_demo</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
</web-app>

2.在其中引入配置好spring的xml文件(如果多个xml,用*.xml)

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:com/conf/spring.xml</param-value>
</context-param>

3.在其中引入监听器

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

4.在其中引入配置好springmvc的xml文件(如果多个xml,用*.xml)

<servlet>
<servlet-name>student</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:com/conf/springmvc.xml</param-value>
    </init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
  <servlet-name>student</servlet-name>
  <url-pattern>/</url-pattern>
  </servlet-mapping>
  

5.为强制编码中文字符防止乱码,加入过滤器

  
  <filter>
    <filter-name>CharacterEncodingFilter</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>
    <init-param>  
        <param-name>forceEncoding</param-name>  
        <param-value>true</param-value>  
    </init-param> 
  </filter>
  <filter-mapping>
    <filter-name>CharacterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
  • 此处debug可以运行,如果出错请检查

**==到这里基本上架构完毕,下面开始尝试构建简单的服务==**

示例一:Hello World

  • controller中新建java文件(Alt+/为自动补全,其他引用错误点击左侧错误信息自动补全)
@Controller
@RequestMapping("visitor")
public class LoginController {
	@RequestMapping("/getString")
	public void getString(HttpServletResponse response) throws IOException{
		
		PrintWriter out=response.getWriter();
		out.print("Hello World");
		out.close();
	}
}
  • 运行并访问地址

    http://localhost:(ip)/(容器名)/(请求的映射)
    
本站总访问量

BUFF © 2018. All rights reserved.

Powered by Hydejack v8.1.1