动态
开发
Spring MVC_拦截器
三要素 拦截 过滤 放行 程序测试1、准备工作导入 jar 包 commons-logging-1.1.3.jarspring-aop-4.0.0.RELEASE.jarspring-beans-4.0.0.RELEASE.jarspring-context-4.0.0.RELEASE.jarspring-core-4.0.0.RELEASE.jarspring-expression-4.0.0.RELEASE.jarspring-web-4.0.0.RELEASE.jarspring-webmvc-4.0.0.RELEASE.jar 在web.xml中配置前端控制器 Dispatche ...
开发
Spring MVC_文件上传
一、前提条件1、表单的要求 method=”post” 编码方式 enctype=”multipart/form-data” 文件上传框 input type=”file” 123<form action="..." method="post" enctype="multipart/form-data"> <input type="file" ... /></form> 2、额外导入的 jar 包在 Spring MVC 的 jar 包基础上导入 commons-file ...
开发
Spring MVC_表单标签
表单标签SpringMVC 也提供了一组类似 JSTL 的标签,供我们在页面上简化开发。下面是个例子: 123456789101112131415161718192021222324252627282930313233343536373839<form:form action="${pageContext.request.contextPath }/emp" method="post" modelAttribute="employee"> <input type="hidden& ...
开发
Spring MVC_REST
一、REST 简介1、概念Representational State Transfer——表现层(资源)状态转化。是目前最流行的一种互联网软件架构风格。 它倡导结构清晰、符合标准、易于理解、扩展方便的 Web 架构体系,主张严格按照 HTTP 协议中定义的规范设计结构严谨的 Web 应用架构体系。由于 REST 所倡导的理念让 Web 应用更易于开发和维护,更加优雅简洁,所以正得到越来越多网站的采用。 资源(Resources):网络上的一个实体,或者说是网络上的一个具体信息。它可以是一段文本、一张图片、一首歌曲、一种服务,总之就是一个具体的存在。可以用一个 URI(统一资源定位符)指向它 ...
开发
Spring MVC_传统CRUD
传统 CRUD1、显示员工列表① 思路 ② 代码[1]配置 SpringMVC 配置文件 1234567891011<!-- 自动扫描的包 --><context:component-scan base-package="com.atguigu.demo.component"/><!-- 配置视图解析器 --><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="viewResolver&q ...
开发
Spring MVC_使用细节(二)
一、页面跳转控制1、转发指令123456789@RequestMapping("/dispatch/forward")public String testForward() { // 物理视图:/WEB-INF/view/page.jsp // 这个物理视图通过拼前后缀无法达到 // 所以使用forward指令 // 格式:forward:物理视图地址 return "forward:/WEB-INF/view/page.jsp";} 测试的 index.jsp: 12<a href=" ...
开发
Spring MVC_使用细节(一)
一、视图解析器通过 HelloWorld 程序我们看到了 handler 方法的返回值表示: 请求处理完成后,请 SpringMVC 执行一个请求转发。转发的地址就是 handler 方法的返回值。 假设我们在/WEB-INF/pages 目录下有一组 JSP 页面,那么访问它们的路径应该如下表所示: 文件名 转发路径 apple.jsp /WEB-INF/pages/apple.jsp grape.jsp /WEB-INF/pages/grape.jsp banana.jsp /WEB-INF/pages/banana.jsp orange.jsp /WEB-IN ...
开发
Spring MVC_搭建开发环境及测试
一、SpringMVC 概述1、SpringMVC 在知识体系中的坐标在我们学习框架知识以前,JavaSE+JDBC+JavaWeb+SQL 这样的技术组合已经可以实现任何业务逻辑了。为什么还要学习 SSM 这样的框架呢? 很简单,MyBatis 是对 JDBC 的封装,而 SpringMVC 是对 JavaWeb 的封装。 其中 JavaWeb 和 SpringMVC 提供了表述层(或称表示层)的解决方案,而 JDBC 和 MyBatis 是持久化层的解决方案。 那 Spring 到哪去了?Spring 中的 IOC 容器为我们的整个项目管理组件,而我们配置的各种 bean、切面类、事务通 ...
开发
Spring_声明式事务(二)
一、事务属性1、事务的传播行为① 概念事务方法 A 直接或间接调用事务方法 B,事务方法 A 已经开启的事务如何传播给方法 B 来使用。 ② 实际开发中的场景举例调用的目标方法带有事务,后面的 AOP 的通知方法也需要事务,它们是在同一个线程内的,存在事务传播行为。 ③ 设置传播行为的属性1@Transactional(readOnly = false, propagation = Propagation.REQUIRED) 在@Transactional 注解中使用 propagation 属性设置传播行为 在 Propagation 枚举类中封装可选的传播行为 REQUIRED:默 ...
开发
Spring_声明式事务(一)
一、声明式事务概述1、事务回顾① 事务和 SQL 语句的关系一个事务中包含多条 SQL 语句。 ② 事务的 ACID 属性 原子性:一个事务中包含的多个数据库操作,缺一不可。 一致性:事务执行之前,整个数据库中的所有数据处于“一致”状态(正确状态);事务执行之后,数据仍然处于“一致”状态。为了做到这一点,我们会让事务中的所有操作,要么全部成功一起提交,要么在任何一个操作失败后整体回滚。 持久性:事务一旦提交,那么就永久保存到数据库中。 隔离性:多个事务可以并发执行,参照隔离级别,决定它们相互之间是否会有彼此干扰。 ③ 事务执行过程中的并发问题 脏读: 初始状态:数据库中 age 字段数据 ...