Java开发之SSM企业轻量级开发框架

SpringMVC

类型转化器
介绍:
1.web开发中,网页中的数据类型十分贫乏,通常只有字符串和字符串数组,但是后台数据处理中需要丰富的数据类型,因此必须进行数据类型转换.
2.SpringMVC上下文中内建了许多类型转换器,可以实现大多数Java类型转换的功能.例如: 基本类型与String的转换,数字与字符的转换.

类型转换分类:
页面数据类型 转为 后台数据类型
后台数据类型 转为 页面数据类型
注意: “页面->后台"或"后台->页面”,在定义和使用类型转换器时,步骤和思路完全相同

日期类型转换
SpringMVC内置了Date与字符串的类型转换器,可以将"yyyy/MM/dd"格式的字符串转为Date对象.

页面数据类型 转为 后台数据类型
全局类型转换:[针对整个项目,有效]
自定义日期类型转换器
局部类型换行: [针对指定数据转换有效]

            @DateTimeFormat(pattern = "yyyy-MM-dd")

注意: Bean必须交给Spring容器管理

                <mvc:annotation-driven />必配

后台数据类型 转为 页面数据类型: [Java对象–>String]
全局类型转换:[针对整个项目,有效]
自定义日期类型转换器
局部类型换行: [针对指定数据转换有效]

            <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
            <fmt:formatDate value="${requestScope.user.birth }" pattern="yyyy*MM*dd" />

编写类型转换器的步骤:
第1步: 编写Java类,实现类型转换器接口

    public class MyDateConvert implements Converter<String, Date> {//S:原数据类型[被转换的数据] T:转换后的数据类型
        @Override
        public Date convert(String source) {//参数为被转换的数据,SpringMVC自动传入
            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy年MM月dd日");//yyyy年MM月dd日
            Date date=null;
            try {
                date=dateFormat.parse(source);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            return date;
        }
    }

注意:
1.必须将类型转换器交个Spring容器管理

第2步: 注册类型转换器
注册类型转换器: 任意方式实现控制反转均可
配置类型转换器:

	<bean id="转换器匿名" class="ConversionServiceFactoryBean类全名">
		<property name="converters">
			<set>
			<ref bean="Bean对象匿名1[自定义类型转换器]" />
			<ref bean="Bean对象匿名2[自定义类型转换器]" />
			</set>
		</property>
	</bean>
	<mvc:annotation-driven conversion-service="转换器匿名" />

拦截器
介绍:
拦截器可以拦截Action请求,以实现特定的拦截处理.SpringMVC中预置了许多拦截器,同时支持自定义拦截器.自定义拦截器只需实现HandlerInterceptor接口,并注册即可.

实现步骤:
第1步: 编写Java类,实现HandlerInterceptor接口

    快捷键: Ctrl+i
            public class MyIntercept1 implements HandlerInterceptor {

                @Override
                public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
                    System.out.println("处理方法执行之前,运行preHandle()");
                    return true;//是否释放请求
                }
                    //Action方法
                @Override
                public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
                    System.out.println("处理方法执行之后,视图渲染之前,postHandle()");
                }

                @Override
                public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
                    System.out.println("处理方法执行之后,且视图渲染完成,afterCompletion()");
                }
            }

第2步: 在SpringMVC配置文件中,注册自定义拦截器.
配置文件:

        <mvc:interceptors>
            <!-- 第1种方式: 默认拦截所有Action请求 -->
            <bean class="自定义拦截器类全名">
            <!-- 第2种方式: 配置拦截资源和不拦截资源 -->
            <mvc:interceptor>
                <!-- 设置拦截器 拦截的URI -->
                <mvc:mapping path="请求映射URI" />
                <!-- 设置拦截器 不拦截的URI[可选] -->
                <mvc:exclude-mapping path="请求映射URI" />
                <!-- 定义拦截器 -->
                <bean class="自定义拦截器类全名" />
            </mvc:interceptor>
        </mvc:interceptors>

注意: 方式2,必须按照标签顺序编写,且只能编写1个
第3步: 访问Action,验证拦截器

延伸:
原理:
SpringMVC根据拦截器注册顺序,依次执行每个拦截器的preHandle(),然后倒序执行每个拦截器的postHandle(),最后倒序执行每个拦截器的afterCompletion().若第N个拦截器的preHandle()返回false.将不再执行之后拦截器的所有方法[包含处理方法],然后倒序执行前(N-1)个拦截器的afterCompletion().

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园建设方案旨在通过融合先进技术,如物联网、大数据、人工智能等,现校园的智能化管理与服务。政策的推动和技术的成熟为智慧校园的发展提供了基础。该方案强调了数据的重要性,提出通过数据的整合、开放和共享,构建产学研资用联动的服务体系,以促进校园的精细化治理。 智慧校园的核心建设任务包括数据标准体系和应用标准体系的建设,以及信息化安全与等级保护的施。方案提出了一站式服务大厅和移动校园的概念,通过整合校内外资源,现资源共享平台和产教融合就业平台的建设。此外,校园大脑的构建是现智慧校园的关键,它涉及到数据中心化、数据资产化和数据业务化,以数据驱动业务自动化和智能化。 技术应用方面,方案提出了物联网平台、5G网络、人工智能平台等新技术的融合应用,以打造多场景融合的智慧校园大脑。这包括智慧教室、智慧验室、智慧图书馆、智慧党建等多领域的智能化应用,旨在提升教学、科研、管理和服务的效率和质量。 在施层面,智慧校园建设需要统筹规划和分步施,确保项目的可行性和有效性。方案提出了主题梳理、场景梳理和数据梳理的方法,以及现有技术支持和项目分级的考虑,以指导智慧校园的建设。 最后,智慧校园建设的成功依赖于开放、协同和融合的组织建设。通过战略咨询、分步施、生态建设和短板补充,可以构建符合学校特色的生态链,现智慧校园的长远发展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值