Java EE

SpringMVC整合Servlet3.0

喜你入骨 提交于 2020-07-28 14:02:50
工程目录结构 MyWebApplicationInitializer.class /** * web容器启动的时候创建对象,调用方法来初始化容器的前端控制器 */ public class MyWebApplicationInitializer extends AbstractAnnotationConfigDispatcherServletInitializer { /** * 获取根容器的配置类(Spring的配置文件)父容器 */ @Override protected Class<?>[] getRootConfigClasses() { return new Class[]{RootConfig.class}; } /** * 获取web容器的配置类(SpringMVC的配置文件)子容器 */ @Override protected Class<?>[] getServletConfigClasses() { return new Class[]{AppConfig.class}; } /** * 获取DispatcherServlet的映射信息 * 拦截所有请求,包括静态资源xx.js,xx.jpg...,但是不包括*.jsp * /*拦截所有请求,连*.jsp都会拦截,jsp页面是tomcat的引擎解析的 * 写成/就行 */ @Override protected

maven编译web项目显示“软件包 javax.servlet.http 不存在"

允我心安 提交于 2020-07-28 11:59:26
maven项目编译报错: [java] view plain copy 软件包 javax.servlet 不存在 import javax.servlet.*; 软件包 javax.servlet 不存在 import javax.servlet.*; 明明tomcat下面的lib自带有这些包,却依然加载失败, 解决方法一: 在pom.xml里面重新引入这个包 [java] view plain copy <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version> 2.5</version> <scope>provided</scope> </dependency> <!-- servlet相关 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api<

Spring(4)——面向切面编程(AOP模块)

天涯浪子 提交于 2020-07-28 11:59:06
Spring AOP 简介 如果说 IoC 是 Spring 的核心,那么面向切面编程就是 Spring 最为重要的功能之一了,在数据库事务中切面编程被广泛使用。 AOP 即 Aspect Oriented Program 面向切面编程 首先,在面向切面编程的思想里面,把功能分为核心业务功能,和周边功能。 所谓的核心业务 ,比如登陆,增加数据,删除数据都叫核心业务 所谓的周边功能 ,比如性能统计,日志,事务管理等等 周边功能在 Spring 的面向切面编程AOP思想里,即被定义为切面 在面向切面编程AOP的思想里面,核心业务功能和切面功能分别独立进行开发,然后把切面功能和核心业务功能 "编织" 在一起,这就叫AOP AOP 的目的 AOP能够将那些与业务无关, 却为业务模块所共同调用的逻辑或责任(例如事务处理、日志管理、权限控制等)封装起来 ,便于 减少系统的重复代码 , 降低模块间的耦合度 ,并 有利于未来的可拓展性和可维护性 。 AOP 当中的概念: 切入点(Pointcut) 在哪些类,哪些方法上切入( where ) 通知(Advice) 在方法执行的什么实际( when: 方法前/方法后/方法前后)做什么( what: 增强的功能) 切面(Aspect) 切面 = 切入点 + 通知,通俗点就是: 在什么时机,什么地方,做什么增强! 织入(Weaving) 把切面加入到对象

shiro框架了解

我的未来我决定 提交于 2020-07-28 10:38:36
shiro框架 1.shiro简介 Apache Shiro是Java的一个安全框架。功能强大,使用简单的Java安全框架,它为开发人员提供一个直观而全面的 认证,授权,加密 及 会话管理 的解决方案 2.shiro组成 Authentication :身份认证/登录,验证用户是不是拥有相应的身份; Authorization :授权,即权限验证,验证某个已认证的用户是否拥有某个权限; Session Manager :会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会话中; Cryptography :加密,保护数据的安全性,如密码加密存储到数据库,而不是明文存储; 3.shiro结构 3.1shiro外部结构 Subject :主体 SecurityManager :安全管理器 Realm :域 流程: 1、应用代码通过Subject来进行认证和授权,而Subject又委托给SecurityManager; 2、我们需要给Shiro的SecurityManager注入Realm,从而让SecurityManager能得到合法的用户及其 权限进行判断。 3.1shiro内部结构 Subject :主体 SecurityManager :相当于SpringMVC中的DispatcherServlet,它管理着所有Subject、且负责进行认证和授权、及会话

Tomcat8.5&Mysql8.0配置数据库连接池(DBCP)

穿精又带淫゛_ 提交于 2020-07-28 10:08:54
DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。由于建立数据库连接是一个非常耗时耗资源的行为,所以通过连接池预先同数据库建立一些连接,放在内存中,应用程序需要建立数据库连接时直接到连接池中申请一个就行,用完后再放回去。 -- 百度百科 开发环境eclipse_photon + Tomcat8.5.32 + mysql8.0 首先需要修改两个配置文件一个是Tomcat的conf/Context.xml,另一个是项目文件下的web.xml创建web项目时生成 Context.xml修改时在eclipse当中修改,否则由eclipse启动tomcat时会还原该文件,在<Context>标签下添加<Resource>标签 <Context> <!-- Default set of monitored resources. If one of these changes, the --> <!-- web application will be reloaded. --> <WatchedResource>WEB-INF/web.xml</WatchedResource> <WatchedResource>${catalina.base}/conf/web.xml<

Web相关概念

…衆ロ難τιáo~ 提交于 2020-07-28 09:45:15
1)web: tomcat 2)Servlet入门学习 3)web概念 (1)软件架构: c/s b/s 域名 (2)资源分类: 1:静态资源(所有用户访问,看到的效果一样): html、css、js 直接返回给浏览器,浏览器中内置的有静态资源的解析引擎 2:动态资源(看到的效果不太一样): jsp、servlet、php、asp 动态资源被访问后需要先转化为静态资源,再返回给浏览器解析. 这个动作被称为:响应 (3)通信3要素(浏览器要通过3要素找到服务器): ip(电子设备(计算机)在网络中的唯一标识) 端口(应用程序在计算机中的唯一标识。0~65535) 传输协议(规定了数据传输的规则) tcp: 安全协议,3次握手 udp: 不安全协议,传输快 4)web服务器软件 (1)服务器: 安装了服务器软件的计算机. (2)服务器软件: 接收用户的请求,处理请求,做出响应. (3)web服务器软件: 接收用户的请求,处理请求,做出响应. 只不过是通过浏览器访问的 在web服务器软件中,可以部署web项目,让用户通过浏览器访问这些项目. 动态资源必须运行在服务器软件里面,因此web服务器也叫做web容器. (4)常见的java相关的web服务器软件: webLogic: oracle, 大型的JavaEE服务器,支持所有的JavaEES规范,收费的. webShpere: IBM公司

消息中间件之:Kafka、ActiveMQ、RabbitMQ、RocketMQ

不打扰是莪最后的温柔 提交于 2020-07-28 07:16:28
《一》kafka的工作原理介绍 《二》zk搭载kafka分布式消息队列浅析 一、简介 消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。 二、消息中间件的组成 2.1 Broker 消息服务器,作为server提供消息核心服务 2.2 Producer 消息生产者,业务的发起方,负责生产消息传输给broker, 2.3 Consumer 消息消费者,业务的处理方,负责从broker获取消息并进行业务逻辑处理 2.4 Topic 主题,发布订阅模式下的消息统一汇集地,不同生产者向topic发送消息,由MQ服务器分发到不同的订阅者,实现消息的 广播 2.5 Queue 队列,PTP模式下,特定生产者向特定queue发送消息,消费者订阅特定的queue完成指定消息的接收 2.6 Message 消息体,根据不同通信协议定义的固定格式进行编码的数据包,来封装业务数据,实现消息的传输。 三、主流消息中间节分类 kafka 1、不完全符合jms规范,注重吞吐量,类似udp 和 tcp 2、一般做大数据吞吐的管道 我们现在的用途就是负责在各个idc之间通信 3、量大对数据不是百分之百保证的,会有数据丢失,不是百分百送达(amq和rmq等有重发机制,而kafka没有);在吞吐量有提升

【springmvc thymeleaf】springmvc整合thymeleaf

☆樱花仙子☆ 提交于 2020-07-28 07:00:43
概述 Thymeleaf提供了一组Spring集成,使您可以将其用作Spring MVC应用程序中JSP的全功能替代品。 这些集成将使您能够: @Controller像使用JSP一样,将Spring MVC 对象中的映射方法转发到Thymeleaf管理的模板。 在模板中使用Spring表达式语言(Spring EL)代替OGNL。 在与表单支持Bean和结果绑定完全集成的模板中创建表单,包括使用属性编辑器,转换服务和验证错误处理。 显示Spring管理的消息文件中的国际化消息(通过常规MessageSource对象)。 使用Spring自己的资源解析机制解析您的模板。 thymeleaf自己也做了spring的集成,所以我们并不需要做太多的配置,就可以达到我们想要的结果。thymeleaf提供了两种集成方法:①、注解配置,也就是java代码,②、xml文件配配置,本文主要介绍第二种xml配置。 你能get到的知识点: 1、springmvc整合thymeleaf 2、spring提供的三种model的使用 3、解决html前端thymeleaf不生效问题(见问题1) 4、解决html前端显示乱码问题(见问题2) @ 目录 概述 你能get到的知识点: springmvc整合thymeleaf 一:加入依赖 二:设置thymeleaf解析器 三:编写控制器 1、使用Model 2

tomcat

旧城冷巷雨未停 提交于 2020-07-28 06:33:56
1. tomcat简介 Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能

实验八 团队作业4:团队项目需求建模与系统设计

核能气质少年 提交于 2020-07-28 04:35:09
项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE/ 这个作业要求连接 https://www.cnblogs.com/nwnu-daizh/p/12976163.html 团队名称 莫得感情的coder 团队成员分工 冯志霞:任务三,设计软件设计说明书框架; 李晓菁:软件设计说明书撰写 马昕璐:分析项目流程,做出uml和wbs计划 唐月晨:需求说明书撰写 团队的课程学习目标 (1)学习使用UML建模工具ProcessOn (2)学习掌握面向对象需求分析建模技术 (3)理解和掌握面向对象软件系统设计原理、设计过程和技术。 这个作业在哪些方面帮助团队实现学习目标 (1)团队协作学习在线作图工具ProcessOn绘制用例图 (2)阅读《软件工程构建之法》8.5节,学习了功能的定位和优先级 (3)通过学习OOA和OOD撰写需求分析说明书和软件设计说明书 团队博客链接 团队博客链接 团队项目Github仓库地址 仓库链接 任务1:以团队协作学习方式掌握在线作图工具ProcessOn的软件操作方法。 ProcessOn是一个在线作图工具的聚合平台,它可以在线画流程图、思维导图、UI原型图、UML、网络拓扑图、组织结构图等等。无需下载和更新的问题,不管Mac还是Windows,一个浏览器就可以随时随地的发挥创意,规划工作。