- 博客(40)
- 收藏
- 关注
原创 【面试】Redis
Redis是一个高性能的内存数据存储系统,也可以称为键值存储系统。它支持多种数据结构,包括字符串、哈希、列表、集合、有序集合等,还提供了一些高级功能,如发布订阅、事务、Lua脚本等。Redis的特点是数据存储在内存中,可以快速读写,同时支持数据持久化到磁盘中。Redis还具有分布式特性,可以通过分片和赋值来实现高可用和高扩展性。Redis主要应用于缓存、会话存储、消息队列、排行榜等场景,具有快速、稳定、可靠等优点。由于其出色的性能和易用性,Redis已经成为最受欢迎的内存数据库之一。
2024-03-12 09:44:22 742
原创 Spring MVC(Next-2)
1.视图解析器和视图ModelAndview: 模型数据 (存储业务数据) 和视图Model: 模型数据(存储模型层中查询到的数据)View:视图(页面属于视图中的一种)控制单元执行完成后,无论什么类型返回值,都会封装为ModelAndview。Model中存储了业务数据,view通常存储视图名。最终目的:将Model 中的业务数据使用视图进行渲染到客户端执行控制单元,控制单元返回结果封装为ModelAndview。控制单元返回的结果固定被封装为ModelAndview。
2023-10-28 20:35:54 238
原创 Spring MVC (Next-1)
使用SpringMVC的文件上传与下载需要引入commons-fileupload依赖和commons-io依赖,由于commons-fileupload已经依赖了commons-io依赖了。其实这就是RESTful风格的写法,请求参数不用key=value,而是key/value,对应这种形式,不可能每个请求写一个Handler方法(控制单元),用下面方法可以一个方法通配多个URL。使用IOUtils类中的copy(输入流对象, 输出流对象)方法,传入文件的输入流对象,获取响应的输出流对象,传入即可。
2023-10-28 20:15:32 595
原创 Spring MVC 续
项目和项目之前访问的网址或ip:port称为域(domain)。跨域:当前项目的协议、ip、端口和访问的URL的协议、IP、端口中有一个不同,这种访问就叫跨域。例如:当前项目访问了就是跨域访问。在Spring MVC支持异常处理。不会呈现给用户500界面。而是当出现异常时交给某个特定的控制器。如果是一个上线的项目,呈现了500界面,会非常影响用户体验度。同时也显示公司实力有问题、不专业。在实体类属性上添加注解注解放在实体类的属性上面,每个实体类属性都支持配置多个注解,这些注解同时生效。
2023-10-27 22:11:56 350
原创 Spring整合(Mybatis和Web)
通过getServletContext()可以获得servletContext对象,属于应用域对象可以在整个应用程序中共享数据和资源。在web.xml中配置监听器,让web项目启动时自动创建Spring容器对象(WebApplicationContext)param-name的值是固定的contextConfigLocation。2.属性注入 接口类对象所需要交给的sqlSessionFactory。对象是在应用程序启动时创建的(tomcat启动是创建,关闭时销毁)。1.属性注入 使用的连接池。
2023-10-22 21:14:37 415 1
原创 Mybatis框架
MyBatis 是一款优秀的半自动的ORM持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
2023-10-21 21:57:29 116 1
原创 Spring 声明式事务+注解获取属性文件中的值+bean生命周期
实现,事务开启放在前置通知,事务提交放在成功返回的后置通知,事务回滚放在异常通知中。
2023-10-20 09:42:32 187 1
原创 Spring Aop
异常通知:如果切入点中出现了异常(绝对不能try...catch解决了异常)就会触发异常通知。(通过切点表达式可以找到需要增强功能的方法),通过表达 式说明哪些方法是join point。环绕通知:一个方法包含了前置通知和后置通知的功能。写UserService userService 是由于默认是由Jdk实现的动态代理(基于接口)被织入的通知的类(可以在类中写多个方法,再在配置中引用实现各种通知)(这儿我没用注解)实例一:织入前置通知(实现MethodBeforeAdvice接口。
2023-10-19 22:26:32 371 1
原创 代理设计模式
在代理对象实现接口中的方法的时候会自动调用invoke()方法。1.为接口创建动态代理对象(实现接口中的方法,例如:Mybatis中的mapper接口)2.为实现了接口的类创建动态代理对象(实现接口中的方法,调用目标方法,例如:功能的增强),也就是代理对象需要继承真实对象,Cglib动态代理是第三方的技术,使用的时候需要导入jar包。代理对象是动态产生的,动态代理又分为。,也就是代理对象和真实对象需要实现相同的接口,JDK动态代理是Java官方提供的技术。2.为实现了接口的类创建动态代理对象。
2023-10-18 22:22:04 152 1
原创 Mybatis技术
开启延迟加载后,在业务层我们在查询所有部门信息时,若并没有涉及到要查询员工的信息时,此时并不会去查询员工信息,在明确查询部门时涉及到员工信息时,才会去查询员工信息,并将其自动装配到部门信息的员工属性中(这里需要注意若部门实体类中是使用List作为属性,通过指定泛型存储员工信息的话,那么业务层查询部门信息时是涉及到查询员工信息的,所以也会查询到所有员工信息;那么在业务层,我们查询所有部门信息的时候,会自动查询每个部门内的员工信息,并自动将其装配到部门类的员工属性中。2. 同一个select标签。
2023-10-15 21:27:30 48 2
原创 jQuery封装的Ajax的使用
返回的数据类型这个参数用来设置服务器返回来的数据类型,可以是xml, html, script, json, text。(请求参数以形式js对象形式传入,可以避免不必要的字符拼接形式传入数据的麻烦)$.post(“请求地址”,“请求参数”,回调函数, 返回的数据类型)$.get(“请求地址”,“请求参数”,回调函数, 返回的数据类型)$.getJSON("请求地址", "请求参数", "回调函数")$.getScript("请求地址", "回调函数")这种方式要求服务器返回的数据类型得是json格式的。
2023-09-26 20:42:35 380
原创 论:Ajax
浏览器发送请求访问服务器后,服务器收到请求调用对应的Servlet进行处理,然后使用resp.getWriter().print()方法的响应结果数据给浏览器,浏览器解析数据,将浏览器页面的内容覆盖掉后,展示解析出的数据!但是在实际应用中,有时候我们希望新的响应结果是在原有界面内容的基础上继续进行显示,而不是新的响应结果直接覆盖了之前的内容,即Ajax技术。发送请求后,不需要等待服务端的响应,继续按照顺序执行其他逻辑代码,监听到响应,自动调用指定的方法。服务器收到请求,对请求进行解析,创建请求和响应对象。
2023-09-24 21:13:10 114 1
原创 Jquery的使用
(":input"): 匹配所有 input, textarea, select 和 button 等元素。$("input"):标签选择器,只匹配input标签。获得所有ul标签中的直接子元素为li的标签。获得prev 标签后面所有的兄弟元素节点。获得p标签中 class名为a的标签。获得所有ul标签中的所有li标签。获得p标签中 id名为a的标签。获得class名为a的标签。获得标签名为a的标签。获得id名为a的标签。$("类型1, 类型2, 类型3")DOM对象转换成jQuery对象。
2023-09-23 19:35:01 302 1
原创 使用cookie(实现免密登录)
用户访问登录页面,输入用户名和密码后,点击登录。登录成功,则跳转到主页面,登录失败则跳转到登录页面,并在页面中显示错误提示语。用户在登录页面中选择记住用户名和密码,则登录成功后,以后再次登录的时候就不需要输入用户名和密码了,点击登录按钮直接访问主页面。使用Servlet+Cookie+Jdbc+MySQL完成!新建数据库,库名为XXX,并创建XXX表。
2023-09-15 21:55:21 1876 1
原创 Javaweb实现登录
2.在web目录下的WEB-INF目录中创建lib文件夹,导入数据库驱动包,并选中add as library。如果正确则在页面中显示登录成功,如果失败则在页面中显示登录失败!2. 重写service方法,在service方法中通过response对象的writer方法完成页面的输出。3.创建lib是在WEB-INF包里面,不然根本访问不了数据库和连接池(出现巨多问题)3. 在web.xml中配置该Servlet(使用注解配置更简洁)使用纯Servlet完成,包括页面的创建以及功能的实现。
2023-09-14 20:06:20 2389 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人