基于注解实现springmvc的入门helloworld

本文介绍了使用Spring MVC框架开发Web应用的具体步骤,包括项目搭建、配置分发器Servlet、创建控制器及视图等过程,并详细解释了各部分的配置与实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开发步骤

   新建web project
   引入jar包
   配置分发器servlet
   创建springMVC配置文件
   创建控制器
   创建jsp文件

导入的jar包如下:

 

   1、在web.xml中配置分发器servlet
   <url-pattern>*.action</url-pattern>的意思为所有以。action结尾的请求都要经过这个servlet
<?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">
	
	<!-- 配置springmvc的分发器servlet -->
	<servlet>
		<servlet-name>action</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<!-- 通过初始化参数指定配置文件的位置 -->
		<init-param>	
			<param-name>contextConfigLocation</param-name>
			<param-value>classpath:spring-mvc.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	
	<servlet-mapping>
		<servlet-name>action</servlet-name>
		<url-pattern>*.action</url-pattern>
	</servlet-mapping>
	
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>
2、创建springMVC配置文件
<?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:mvc="http://www.springframework.org/schema/mvc"
	xmlns:context="http://www.springframework.org/schema/context"
	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 ">
	<!-- 自动扫描 -->
	<context:component-scan base-package="cn.springmvc.web.controller"/>
	
	<!-- 注解驱动(隐式的注册了几个默认的解析器,对注解进行解析) -->
	<mvc:annotation-driven/>
	
	
	<!-- 内部资源视图解析器  prefix + logicName(返回的逻辑名) + suffix /WEB-INF/pages/ + index(逻辑名) + .jsp-->
	<bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<!-- 前缀 -->
		<property name="prefix" value="/WEB-INF/pages/"/>
		<!-- 后缀 -->
		<property name="suffix" value=".jsp"/>
	</bean>
</beans>

3、创建Controller(控制器)
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping(value="/hello")//根路径
public class HelloController {

	@RequestMapping(value="/home.action")//子路径
	public String goHome(){
		
		System.out.println("方法执行------");
		
		return "hello";
	}
}
4、创建jsp文件
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head> 
    <title>My JSP 'index.jsp' starting page</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
  </head>
  
  <body>
   		<h1>HelloWorld!</h1>
  </body>
</html>
注解意思

@Controller :类名上,就可以被spring工厂进行管理(也就是说那个类的初始化就交给了spring工厂进行的了)

现在不仅是sping里面的一个组件的了,还是springmvc中的一个控制器,所以还需要加上@RequestMapping

 

 

小小总结:
注解:
@Controller
@RequestMapping(value="/home")//跟路径
public class HomeController{

	@RequestMapping(value="/a")//子路径
	public string method(){}
	要想访问这里面的方法 ,就需要  跟路径+子路径访问(如果没有跟路径,那么访问的时候就是直接项目名称 + 子路径)
	如://http://localhost/springmvc/home/a(那么现在就访问到了HomeController中的method()方法)

	
	@RequestMapping(value="/b")
	public strng method2(string id){
	收集表单数据:

		声明一个与传过来的属性名同名的一个  字段就可以的了,直接就可以注入进来(框架做的)
		method2(HttpServletRequest re){
			利用request接收
			re.getParameter()
		}
		method2(Person p){
		如果有实体对象,直接在方法中写就可以,框架会直接把实体类包装好
		然后注入进来
		}

		return "home";//返回的是逻辑名
		返回由视图解析器解析, 前缀 + 逻辑名 + 后缀名
	}

	public string me(Map<String,object> model){

		//往请求域里面加入内容
		1、model.put("key","value");
		2、request.setAttribute();
	}

}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值