jstl

浅谈 SpringMVC入门

醉酒当歌 提交于 2020-05-01 01:08:48
SpringMVC 1.Springmvc是什么 Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。 1.1 Springmvc 架构图 1、DispacherServlet前端控制器 负责用户请求和响应,是一个中央控制器(调度),调用HandlerMapping查找Handler,调用HandlerAdapter处理器适配器执行Handler,调用ViewResolver视图解析器去解析视图,有了DispacherServlet有利于框架扩展,减少了各各组件之间耦合性。 2、HandlerMapping处理器映射器 不需要开发,使用框架提供的 负责查找Handler(常用action),通过xml配置方式或注解方式将Handler类和request请求Handler链接地址进行对应配置。 3、HandlerAdapter处理器适配器 不需要开发,使用框架提供的 Springmvc提供了很多种适配器,注解适配器支持注解开发、原始servlet适配器(HanderRequestAdapter)支持原始servlet的执行。

基于SpringMVC+Spring+MyBatis实现秒杀系统【概况】

偶尔善良 提交于 2020-04-28 22:05:01
前言 本教程使用SpringMVC+Spring+MyBatis+MySQL实现一个秒杀系统。教程素材来自慕课网视频教程【https://www.imooc.com/learn/631】。有感兴趣的可以直接看慕课网视频,老师讲的不错,整个系统设计思路也很清晰。本文是我学习Spring时的一手资料,这篇文章先来看看概况,后续会分三篇文章分别介绍:底层Dao接口、Service接口、前端交互。 前台页面用到了Bootstrap提供的结构来实现页面。 系统设计 涉及到的知识点:MySQL、SpringMVC、Spring、MyBatis、jsp、jstl。数据库连接池用的c3p0,日志用的logback。 我在本地开发时数据库装在CentOS7里。编码在windows里做。 概况 开篇主要想分享下学习的一点点感悟,仅仅是一点点感悟,视频看了两遍,觉的老师在前台交互方面的设计思路比较独到,而且讲解比较清晰,比如在页面里先暴漏秒杀地址、倒计时显示秒杀活动开始时间、【ajax】请求时把业务参数直接放在路径里、用模态对话框模拟用户登录。 视频在编写程序的同时还给你提醒什么地方我们应该查询官方文档。查询官方文档配置xml的同时还要搞清楚这个配置背后都做了那些工作,比如spring-web.xml中<mvc:annotation-driven/>都做了那些工作

Mybatis04--动态SQL

喜你入骨 提交于 2020-04-20 09:55:07
前言: 在以前我们使用JDBC或者其它框架时,一件很痛苦的事情是根据不同条件拼接 SQL 语句。拼接的时候要确保不能忘了必要的空格,还要注意省掉列名列表最后的逗号。然而现在,我们利用动态 SQL 这一特性就可以彻底摆脱这种痛苦。 通常使用动态SQL不可能是独立的一部分,MyBatis当然使用一种强大的动态SQL语言来改进这种情形,这种语言可以被用在任意映射的SQL语句中。 动态SQL元素和使用JSTL或其它相似的基于XML的文本处理器相似,在MyBatis之前的版本中,有很多元素需要了解,MyBatis3大大地提升了它们,现在用不到原先一半的元素就能工作了,MyBatis采用功能强大的基于OGNL的表达式来消除其他元素。 if: 动态 SQL 通常要做的事情是有条件地包含 where 子句的一部分。比如: < select id= "findBlog" resultType= "Blog" > SELECT * FROM BLOG WHERE state = ‘ACTIVE’ < if test= "title != null" > AND title like #{title} </ if > </ select > 这条语句提供了一个可选的文本查找类型的功能。 如果没有传入“title”,那么所有处于“ACTIVE”状态的BLOG都会返回 ;反之若传入了“title”

Spring Maven分模块方式无法解析jstl问题

蓝咒 提交于 2020-04-18 08:41:15
问题引出 今天使用maven写SpringMvc,部署到tomcat时,遇到这样一个问题: Java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config at org.springframework.web.servlet.support.JstlUtils.exposeLocalizationContext(JstlUtils.java:101) at org.springframework.web.servlet.view.JstlView.exposeHelpers(JstlView.java:135) at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:142) at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:303) at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1244) at org

jstl c:choose>、<c:when>和<c:otherwise>标签

孤人 提交于 2020-04-06 19:31:52
<c:choose>、<c:when>和<c:otherwise>在一起连用,可以实现Java语言中的if-else语句的功能。例如以下代码根据username请求参数的值来打印不同的结果: <c:choose> <c:when test="${empty param.username}"> Nnknown user. </c:when> <c:when test="${param.username=='Tom'}"> ${param.username} is manager. </c:when> <c:otherwise> ${param.username} is employee. </c:otherwise> </c:choose> 以上标签等价于以下Java程序片段: <% String username=request.getParameter("username"); if(username==null){ //对应第一个<c:when>标签的主体 out.print("Nnknown user."); }else if(username.equals("Tom")){ //对应第二个<c:when>标签的主体 out.print(username+" is manager."); }else{ //对应<c:otherwise>标签的主体 out.print

jstl中的foreach标签

我们两清 提交于 2020-04-05 23:31:11
<%@ page import="java.util.ArrayList" %><%@ page import="java.util.List" %><%@ page contentType="text/html;charset=UTF-8" language="java" %><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><html><head> <title>jstl中foreach标签</title></head><body><c:forEach begin="1" end="10" var="i" step="1" varStatus="s"> ${i}<br/></c:forEach><hr><c:forEach begin="1" end="10" var="i" step="2" varStatus="s"> ${i}/${s.index}/${s.count} <br/></c:forEach><hr><% List list = new ArrayList(); list.add("aaa"); list.add("bbb"); list.add("ccc"); request.setAttribute("list",list);%><c:forEach items="${list}

JSTL标签

蹲街弑〆低调 提交于 2020-04-05 23:02:11
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%-- JSTL学习: 作用: 提高在jsp中的逻辑代码的编写效率,使用标签。 使用: JSTL的核心标签库(重点) JSTL的格式化标签库(讲解) JSTL的SQL标签库(了解) JSTL的函数标签库(了解) JSTL的XML标签库(了解) JSTL的核心 标签库: 1、导入jar包 2、声明jstl标签库的引入(核心标签库) <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 3、内容: 基本标签: <c:out value="数据" default="默认值"></c:out> 数据可以为常量值也可以是EL表达式。 作用:将数据输出给客户端。 <c:set var="hello" value="hello pageContext" scope="page"></c:set> 作用:存储数据到作用域对象中 var:表示存储的键名 value:表示存储的数据 scope:表示要存储的作用域对象 page request session

JSTL标签库

北城余情 提交于 2020-04-05 20:57:27
1.什么是JSTL?   JSTL全称为 JSP Standard Tag Library 即JSP标准标签库。它与EL表达式一样,也是为了替换掉JSP中的java代码。它提供了一系列的JSP标签,实现了java的基本功能:集合的遍历、数据的输出、字符串的处理、数据的格式化等等。JSTL可以说是EL的补充、扩展,经常与EL一起使用。 2.常见子标签库 核心标签库: 包含 Web 应用的常见工作,比如:循环、表达式赋值、基本输入输出等。(常用) 格式化标签库:用来格式化显示数据的工作,比如:对不同区域的日期格式化等。 函数标签库:用来读取已经定义的某个函数。 XML 标签库:用来访问 XML 文件的工作,这是 JSTL 标签库的一个特点。(基本不用) 数据库标签库:可以做访问数据库的工作。(基本不用) 3.标签库导入及使用   1.下载jar包,并导入    2.使用<%@ taglib %>引入标签库,设置uri和prefix的属性值。   核心标签库:<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>   格式化标签库:<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>   函数标签库:<%@ taglib uri="http

其乐后台管理系统(五)--订单管理模块

安稳与你 提交于 2020-03-26 17:31:48
3 月,跳不动了?>>> 前言:hello!!!在前几天给大家介绍到了----- 门店管理模块 ,今天的订单模块和管理模块其实相差无几,实现方式可以说几乎相同!!不过还是得给大家好好的讲解一下订单模块,因为这次订单模块的前端部分将会为大家讲到两个特别的标签,也让大家对项目有更深的了解。 其乐蛋糕店后台管理系统 地址 Github--其乐后台管理系统源码 https://github.com/XINGGou/qile 其乐后台管理系统(一)--项目介绍 https://my.oschina.net/u/4115134/blog/3193902 其乐后台管理系统(二)--整合三大框架(spring+springmvc+mybatis) https://my.oschina.net/u/4115134/blog/3195801 其乐后台管理系统(三)--整合mybatis框架(三大框架搭建成功) https://my.oschina.net/u/4115134/blog/3196768 其乐后台管理系统(四)--门店管理模块 https://my.oschina.net/u/4115134/blog/3207632 其乐后台管理系统(五)--订单管理系统 https://my.oschina.net/u/4115134/blog/3211989 后端部分 1.创建com.it.pojo

Spring MVC Redirect Attribute Messages

本秂侑毒 提交于 2020-03-25 07:51:12
问题 I am having some issues while displaying messages after I have successfully, or unsuccessfully performed some type of CRUD operation (CREATE, DELETE, etc). I have attempted to use Redirect Flash Attributes, although I have found no luck with these and I cannot get the message displaying at all. For example I have declared something like this within my Controller method: public String DeleteAction(Model model, Object object, @RequestParam int id, RedirectAttributes attributes) { // Method