import java.util.HashMap;
import java.util.Map; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.support.SessionStatus;
import org.springframework.web.portlet.bind.annotation.RenderMapping;
import org.springframework.web.servlet.ModelAndView; import com.etc.entity.Book;
import com.etc.entity.Student; //通过注解创建1个控制器对象
@Controller
public class HelloAction
{
public HelloAction()
{
System.out.println("构造了!!!");
}
//通过注解配置该方法处理含有hello的请求
@RequestMapping("/hello")
public String hello()
{
//返回一个视图标识.自动被映射到/WEB-INF/jsp/hello.jsp的文件
return "hello";
} //通过modelandview返回模型和视图的打包
@RequestMapping("/showdata")
public ModelAndView showdata()
{
Map<String,Object> data = new HashMap<String,Object>();
data.put("str", " i am bai"); //存储字符串
data.put("stu", new Student(1,"白")); //存储字符串 ModelAndView ma = new ModelAndView("showdata", data);
return ma;
}
@RequestMapping(method=RequestMethod.GET,value="/showinput")
public ModelAndView showinput(
@RequestParam(value="a",required=true) String a,
@RequestParam(value="b",required=false) String b
)
{
Map<String,Object> data = new HashMap<String,Object>();
data.put("a", a); //存储字符串
data.put("b", b); //存储字符串 ModelAndView ma = new ModelAndView("showinput", data);
return ma;
} //在请求作用域初始化1个空模型
@ModelAttribute("student")
public Student initStudent()
{
return new Student();
} @ModelAttribute("book")
public Book initBook()
{
return new Book();
} //用于输入一个学生。练习,创建Animal类,aid,aname,feetcount。使用模型驱动输入1个动物并显示。
@RequestMapping("/input_stu")
public String showinput_stu
(@ModelAttribute("student") Student stu
,@ModelAttribute("book") Book book)
{
return "show_stu";
} @RequestMapping(value="/{a}/{b}/input_path")
public ModelAndView inputpath(@PathVariable String a,@PathVariable String b)
{
Map<String,Object> data = new HashMap<String,Object>();
data.put("a", a); //存储字符串
data.put("b", b); //存储字符串 ModelAndView ma = new ModelAndView("showinput_path", data);
return ma;
}
//使用rest风格,录入1个学生
@RequestMapping(value="/{sid}/{sname}/input_stu_path.html")
public ModelAndView inputpath(@PathVariable int sid,@PathVariable String sname)
{
Map<String,Student> data = new HashMap<String,Student>(); data.put("stu", new Student(sid, sname) ); //存储学生 ModelAndView ma = new ModelAndView("showinput_stu_path", data);
return ma;
} //使用老方法获取request,session
@RequestMapping(value="/getsession1")
public String getsession1(HttpServletRequest request)
{
request.setAttribute("r", "rrrrrrrrrrr");
HttpSession s = request.getSession();
s.setAttribute("s1", "11111111");
return "show_session1";
} //使用新方法获取session
@RequestMapping(value="/getsession2")
public String getsession1(HttpSession session
,HttpServletRequest request
,SessionStatus sta)
{
//如果该session被删除,需要重建*/
if (sta.isComplete())
session = request.getSession();//重建sessin
session.setAttribute("s2","222222");
//session.invalidate(); //删除整个session
return "show_session2";
}
}

  

springmvc----demo1---hello---bai的更多相关文章

  1. springmvc学习(三)

    第一点---------使用 @RequestMapping 映射请求• Ant 风格资源地址支持 3 种匹配符:?:匹配文件名中的一个字符 *:匹配文件名中的任意字符 **:** 匹配多层路径 @R ...

  2. [模拟回调] demo1模拟用字符串调用js函数 demo2模拟springmvc controller回调页面js函数

    demo1. 模拟用字符串调用js 函数 function dataQuery() { var strFun = "testCallBack"; var strParam = &q ...

  3. SpringMVC一路总结(一)

    SpringMVC听闻已久,早在去年就被学长问到关于SpringMVC的基础知识,当时也没在意.主要是工作中也没有用到关于SpringMVC的技术,因此免于没有时间和精力的借口就没有接触和学习Spri ...

  4. springmvc 注解总结

    1.@RequestMapping@RequestMappingRequestMapping是一个用来处理请求地址映射的注解(将请求映射到对应的控制器方法中),可用于类或方法上.用于类上,表示类中的所 ...

  5. struts2 基础demo1

    我们都知道 struts2 是基于webframework 出现的 优秀的mvc 框架, 他和struts1 完全没有联系.struts2 是一个框架, 啥叫框架呢?是一个优秀的半成品 . web的框 ...

  6. ②springMVC入门

    1 1.1      需求 以案例作为驱动. springmvc和mybaits使用一个案例(商品订单管理). 功能需求:商品列表查询 1.2      环境准备 数据库环境:mysql5.1

  7. springMVC部署

      一.导入springMVC所需要的jar包   下载地址:http://repo.spring.io/release/org/springframework/spring/   二.springM ...

  8. springmvc(六)——视图和视图解析器

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoIAAAGrCAIAAADb2WEhAAAgAElEQVR4nOzdaVhTd78vfF8/z772c9 ...

  9. springmvc学习(五)——处理模型数据

    Spring MVC 提供了以下几种途径输出模型数据: ModelAndView: 处理方法返回值类型为 ModelAndView 时, 方法体即可通过该对象添加模型数据Map 及 Model: 入参 ...

  10. springmvc学习(四)

    1.使用 @CookieValue 绑定请求中的 Cookie 值 例子: java @RequestMapping(value="/testCookieValue") publi ...

随机推荐

  1. Loop through an array in JavaScript

    https://stackoverflow.com/questions/3010840/loop-through-an-array-in-javascript?page=1&tab=votes ...

  2. Compaction介绍

    Compaction介绍 Compaction是buffer->flush->merge的Log-Structured Merge-Tree模型的关键操作,主要起到如下几个作用: 1)合并 ...

  3. web自动化:前端页面组成

    一.web页面的组成 1. 常用:HTML + CSS + Javascript 2. HTML:定义页面的呈现内容 3. CSS:Cascading Style Sheets,层叠样式表 控制你的网 ...

  4. Kestrel Web 服务器学习笔记

    前言: ASP.NET Core 已经不是啥新鲜的东西,很多新启的项目都会首选 Core 做开发: 而 Kestrel 可以说是微软推出的唯一真正实现跨平台的 Web 服务器了: Kestrel 利用 ...

  5. js杨辉三角

    function Tree() { this.lines = [ [] ] } var pp = Tree.prototype pp.genNode = function(line, i) { , , ...

  6. gradle_学习_01_gradle安装与基本使用

    一.下载安装 1.下载地址 官方下载地址: https://gradle.org/install/#manually 下载二进制文件,解压即可 2.环境变量配置 加入以下环境变量 GRADLE_HOM ...

  7. FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask

    hive启动后,出现以下异常 hive> show databases; FAILED: Error / failed on connection exception: java.net.Con ...

  8. ICE的连接机制

    1.当使用ICE的proxy进行方法调用时,ICE运行环境会建立一个到服务器的连接.当proxy提供了多个endpoint时   默认的ICE运行环境选择endpoint的行为为random,可以通过 ...

  9. LeetCode Relative Ranks

    原题链接在这里:https://leetcode.com/problems/relative-ranks/#/description 题目: Given scores of N athletes, f ...

  10. mysql 多表查询 左联 去重方法

    1.数据库中的两张表: 2.传统左联查询数据结果如下: 3.替换查询语句可得到去重数据结果: