JAVAWEB浅入
文章平均质量分 70
记录javaweb学习日志
陈毓辰
一位想靠技术吃饭的底层青年!
不断尝试!!!
展开
-
封装七牛云存储工具类
我们就需要使用七牛云提供的Java SDK完成图片上传和删除,我们可以参考官方提供的例子。//———https上传,自动识别上传区域—— //Zone.httpsAutoZone。方案二:使用开源的分布式文件存储系统,例如Fastdfs、HDFS等。分服务器处理的目的是让服务器各司其职,从而提高我们项目的运行效率。在实际开发中,我们会有很多处理不同功能的服务器。//———http上传,自动识别上传区域——文件服务器:负责存储用户上传文件的服务器。方案三:使用云存储,例如阿里云、七牛云等。原创 2023-09-18 10:52:11 · 376 阅读 · 0 评论 -
Mapper层公共字段自动填充
*** 自定义注解,用于标识某个方法需要进行功能字段自动填充处理*/ @Target(ElementType . METHOD) //指定注解只能加在方法上 @Retention(RetentionPolicy . RUNTIME) //用于描述注解的生命周期 public @interface AutoFill {//指定一个属性,指定当前数据库的操作类型,使用枚举 OperationType value();OperationType是定义的一个公共枚举/*** 数据库操作类型/**原创 2023-08-06 10:39:51 · 377 阅读 · 0 评论 -
学习JDBC-这篇博客足矣!
在开发中我们使用的是java语言,那么势必要通过java语言操作数据库中的数据。这就是接下来要学习的JDBC。Statement对象的作用就是用来执行SQL语句。而针对不同类型的SQL语句使用的方法也不一样DML//1. 注册驱动 // Class.forName("com.mysql.jdbc.Driver");原创 2023-07-09 11:35:40 · 526 阅读 · 0 评论 -
七牛云上传图片报错处理
创建七牛云存储空间时选择的不同地区,上传的配置类中的配置也不同。更换构造方法中的参数即可解决该报错!构造一个带指定Zone对象的配置类。原创 2022-12-31 19:40:52 · 1630 阅读 · 0 评论 -
Session的原理分析
(7)关闭打开浏览器后,因为浏览器的cookie已被销毁,所以就没有JESSIONID的数据,服务端获取到的session就是一个全新的session对象。(1)demo1在第一次获取session对象的时候,session对象会有一个唯一的标识,假如是。的session对象,如果找到了,就直接返回该对象,如果没有则新创建一个session对象。(4)浏览器接收到响应结果后,会把响应头中的coookie数据存储到浏览器的内存中。(5)浏览器在同一会话中访问demo2的时候,会把cookie中的数据按照。..原创 2022-09-01 08:49:10 · 259 阅读 · 0 评论 -
Session
*注意:**Session中可以存储的是一个Object类型的数据,也就是说Session中可以存储任意数据类型。介绍完Session的基本使用之后,那么Session的底层到底是如何实现一次会话两次请求之间的数据共享呢?通过案例的效果,能看到Session是能够在一次会话中两次请求之间共享数据。3)SessionDemo1:获取Session对象、存储数据。Session:服务端会话跟踪技术:将数据保存到服务端。Session常用方法的使用。Session的获取。...原创 2022-08-29 13:22:18 · 235 阅读 · 0 评论 -
Cookie的使用细节
=针对上面的问题,通过演示会发现,BServlet中无法再无法获取到Cookie数据,这是为啥?2.负数:默认值,Cookie在当前浏览器关闭,则浏览器关闭,则Cookie被销毁。1.正数:将Cookie写入浏览器所在电脑的硬盘,持久化存储。Cookie的使用细节中,我们要注意cookie的存活时间和存储中文。接下来,就设置AServlet中去设置Cookie的存活时间。(2)在BServlet中获取值,并对值进行解码。这样我们就可以将中文存入Cookie中进行使用。3.零:删除对应的Cookie。...原创 2022-08-28 10:58:57 · 335 阅读 · 0 评论 -
会话技术!
在BServlet中使用request对象获取Cookie数组,遍历数组,从数据中获取指定名称对应的值。访问`http//localhost8080/cookie-demo/bServlet。(3)在Servlet中创建Cookie对象,存入数据,发送给前端。4)启动测试,在浏览器查看Cookie对象中的值。//2.发送Cookie,response。启动测试,在控制台打印出获取的值。cookie是存储在浏览器中的。//1.创建Cookie对象。//发送Cookie。...原创 2022-08-02 16:34:21 · 129 阅读 · 0 评论 -
MVC模式和三层架构
而整个流程是,浏览器发送请求,表现层的Servlet接收请求并调用业务逻辑层的方法进行业务逻辑处理,而业务逻辑层方法调用数据访问层方法进行数据的操作,依次返回到serlvet,然后servlet将数据交由JSP进行展示。那么我们以后按照要求将不同层的代码写在不同的包下,每一层里功能职责做到单一,将来如果将表现层的技术换掉,而业务逻辑层和数据访问层的代码不需要发生变化。三层架构是将我们的项目分成了三个层面,分别是数据层,业务逻辑层,数据访问层。后期我们还会学习一些框架,不同的框架是对不同层进行封装的。...原创 2022-07-30 10:53:51 · 2398 阅读 · 0 评论 -
EL 表达式
EL(全称ExpressionLanguage)表达式语言,用于简化JSP页面内的java代码。EL表达式的主要作用是获取数据。其实就是从域对象中获取数据,然后将数据,然后将数据展示在页面上。而EL表达时候的语法也比较简单,.例如${brands}就是获取域中存储的key为brands的数据。JSP标准标签库(JSPStandardTagLibrary),使用标签取代JSP页面上的java代码。如下代码就是JSTL标签...原创 2022-07-29 15:10:53 · 367 阅读 · 0 评论 -
快速入门jsp
jsp(全称java服务端页面。是一种动态的网页技术,其中既可以定义HTML、JS、CSS等静态内容,还可以定义java代码的动态内容,也就是JSP=HTML+JAVA。如下就是jsp代码上面代码h1标签内容是展示在页面上,而Java的输出语句是输出在idea的控制台。该依赖的scope必须设置为provided,因为tomcat中有这个jar包了,所以在打包时我们是不希望将该依赖打进到我们工程的war包中。(防止产生冲突)...原创 2022-07-28 22:08:37 · 463 阅读 · 0 评论 -
使用SqlSessionFactory工具类抽取
工具类抽取以后,以后在对Mybatis的SqlSession进行操作的时候,就可以直接使用。这样就可以很好的解决上面所说的代码重复和重复创建工厂导致性能低的问题了。获取sqlSessionFactory对象。获取sqlsession对象。...原创 2022-07-28 18:01:26 · 462 阅读 · 0 评论 -
Response对象-响应字符数据
一次请求响应结束后,response对象就会被销毁,所以不要手动关闭流。,需要设置响应数据编码为utf-8。如果要返回一个中文字符串。原创 2022-07-26 15:29:04 · 3060 阅读 · 0 评论 -
Response对象
HTTP响应数据总共分为三部分内容,分别是响应行、响应头、响应体,对于这三部分内容的数据,respone对象都提供了哪些方法来进行设置?响应行HTTP/1.1200ok对于响应头,比较常用的就是设置响应状态码响应头Content-Typetext/html键值对的形式设置响应头键值对响应体对于响应体,是通过字符、字节输出流的方式往浏览器写,获取字符输出流获取字节输出流介绍完这些方法后,后面我们会通过案例把这些方法都用一用,首先来完成一下重定向的功能开发。......原创 2022-07-22 14:40:39 · 190 阅读 · 0 评论 -
解决servlet中post请求和get请求中文乱码现象
至此POST请求中文乱码的问题就已经解决,但是这种方案不适用于GET请求,这个原因是什么呢,咱们下面再分析。所以get请求不能用设置编码的方式来解决中文乱码问题,那我们就要思考如何来解决get请求中文乱码问题?分析完上面的问题后,我们会发现,其中有两个我们不熟悉的内容就是。到这,我们就可以分析出GET请求中文参数出现乱码的原因了,在计算的十六进制结果中,每两位前面加一个%,就可以获取到。2.清楚了出现乱码的原因,接下来我们就需要想办法解决。,什么是URL编码,什么又是URL解码呢?这个结果是如何计算的?..原创 2022-07-21 15:24:29 · 4966 阅读 · 0 评论 -
Mybatis小结
#{} :执行SQL时,会将 #{} 占位符替换为?,将来自动设置参数值。从上述例子可以看出使用#{} 底层使用的是 ${} :拼接SQL。底层使用的是 ,会存在SQL注入问题。如下图将 映射配置文件中的 #{} 替换成 ${} 来看效果参数占位符:1. #{}:会将其替换为 ?,为了防止SQL注入2. KaTeX parse error: Expected 'EOF', got '#' at position 63: … * 参数传递的时候:#̲{} …{} 会存在SQ原创 2022-07-12 23:49:23 · 156 阅读 · 0 评论 -
解决mysql映射文件的警告提示
在映射文件中存在爆红的情况产生的原因:idea和数据库没有建立连接,不识别表的信息。但是大家一定记住,他并不影响程序的执行。解决方式:在idea中配置mysql数据库连接。原创 2022-07-10 00:02:31 · 460 阅读 · 0 评论 -
Mapper代理开发
使用Mapper代理方式,必须满足以下要求:原创 2022-07-08 23:07:41 · 209 阅读 · 0 评论 -
MYBATIS
持久层:需求:查询User表中所有的数据创建模块,导入坐标在创建好的模块中的 pom.xml 配置文件中添加依赖的坐标注意:需要在项目的 resources 目录下创建logback的配置文件编写 MyBatis 核心配置文件 – > 替换连接信息 解决硬编码问题在模块下的 resources 目录下创建mybatis的配置文件 ,内容如下:编写 SQL 映射文件 --> 统一管理sql语句,解决硬编码问题在模块的 目录下创建映射配置文件 ,内容如下:...原创 2022-07-07 21:53:35 · 275 阅读 · 0 评论 -
MAVEN
maven是专门用于管理和构建java项目的工具,它的主要功能有:标准化的项目结构:maven简介maven模型本地仓库:自己计算机上的一个目录中央仓库:由Maven团队维护的全球唯一的仓库远程仓库(私服):一般由公司团队搭建的私有仓库今天我们只学习远程仓库的使用,并不会搭建。当项目中使用坐标引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar包:如果有,则在项目直接引用;如果没有,则去中央仓库中下载对应的jar包到本地仓库。...原创 2022-07-06 22:47:47 · 107 阅读 · 0 评论 -
jdbc-PrepareStatement+数据库连接池的介绍
看该条语句:“select * from tb_user where username = '”+name+“’ and password = '”+pwd+“'”;将我们输入的账号密码写入(账号随意,密码会产生sql注入): password = ’ ‘or’1’='1 ’ ==> password = ’ ‘or’1’=‘1’ ; ‘’ => 假 或 ‘1’=‘1’ 真 所以得到的结果为真,所以就算输入的不是真正的密码,最终也能够实现登录。现在我们使用?(占位符原创 2022-07-05 22:48:12 · 471 阅读 · 0 评论 -
JDBC-Statement+ResultSet介绍
案例代码JDBC-ResultSetResultSet(结果集对象)的作用:**封装了SQL查询语句的结果 **ResultSet对象提供了操作结果数据的方法案例代码结束!!!!!原创 2022-07-04 23:31:31 · 414 阅读 · 0 评论 -
快速入门JDBC
创建工程,导入mysql连接的驱动jar包创在建的工程下的src目录中创建一个专门存储驱动jar包的文件夹 – lib 将本地的jar复制到该目录下 将jar包添加为库文件,如下图:注册驱动提示:1.MySQL 5之后的驱动包,可以省略注册驱动的步骤2.自动加载jar包中META-INF/services/java.sql.Driver文件中的驱动类获取连接Java代码需要发送SQL给MySQL服务端,就需要先建立连接定义SQL语句定义一个String类型的数据,初始化为SQ原创 2022-07-03 23:01:40 · 93 阅读 · 0 评论