Servlet、JSP、框架
文章平均质量分 74
正气八方
这个作者很懒,什么都没留下…
展开
-
Spring MVC 控制器类中,获取HTTP请求参数的总结
最基本的底层支持,其实都是Servlet的那一套,通过j2ee底层的ServletRequest接口 ,即 request对象的getParameter方法去获取HTTP请求中的参数(表单中<input>标签的的 <name,value>键值对)。java.lang.String getParameter(java.lang.Stringname) Returns the value of a request parameter as a...原创 2021-02-15 15:48:52 · 441 阅读 · 0 评论 -
Spring MVC的控制器的开发流程
控制器的开发过程一般分为3步获取request请求参数不建议在注解@RequestMapping的方法的参数中,使用Servlet容器给与的API,比如不建议下面的写法:这样写,使用了原生API中的 HttpSession和HttpServletRequest,也就和Tomcat这种特定容器关联了。不利于扩展和测试。Spring MVC可以通过更多的注解来获取请求参数,比如参数注解@RequestParam(“ ”)以获取请求参数id为例:Spring MVC可以这么写控制器.原创 2021-02-11 10:52:47 · 605 阅读 · 0 评论 -
开发工具的Web工程编译前,编译后,目录的区别。
IDEA(Maven)版Eclipse版总结编译后的 类文件(类路径中国)、库、工程配置文件web.xml,都在WEB-INF目录中。原创 2021-02-03 22:58:07 · 263 阅读 · 0 评论 -
maven笔记(尚硅谷)
https://www.bilibili.com/video/BV1TW411g7hP?from=search&seid=14158829978266635696记录下学习笔记。先是视频中的先修知识总结:已经掌握的技术:其中,如果用的struts2,控制器就是Action,如果用的是SpringMVC,控制器就是Handler。...原创 2021-02-02 10:20:19 · 1073 阅读 · 0 评论 -
DAO层的写法总结
DAO层的写法总结:DAO层持有实体层的对象,DAO层的增删改查写法会很多。下面总结一下三种写法:这里只给出查询的写法,其他写法类似。1、最原始的JDBC写法2、Apache的 Commons DbUtils3、Hhibernate 或 Mybatis方式mysql 5.5 建库、建表、两行示例数据的语句:(账号和密码都是root) create database studentdb; use studentdb; create table st原创 2021-01-31 15:42:28 · 10634 阅读 · 1 评论 -
服务器的Servlet层的数据封装 与 浏览器的表单的数据传送 ,并启发画出增、改的技术路线图。
通过之前的文章,已经知道,浏览器的表单如果将HTTP请求发往服务器上的某个Servlet,那么表单的action属性值可以是:<form action="XXX...Servlet" method="post">服务器上的Servlet,其中的doGet(request , response ) 或 doPost,设计到一些重要的HttpRequest对象方法,和重要的第三方包的用法,这里予以总结。...原创 2021-01-28 21:54:12 · 187 阅读 · 0 评论 -
黑马Spring的4天教程--第一天:工厂模式、单例对象的线程安全问题、单例工厂模式、Spring负责创建业务层和持久层对象、BeanFactory接口下的孙子接口特点、Bean对象作用范围和生命周期
在ui的包中,调用service包中的类,进而调用dao包中的类。实体层domain包中,是User类的属性和set、get、和toString等方法,有些书上叫做POJO持久层dao包中,是一个简单的save方法,这里并没有使用到实体类User(为了简单考虑,所以实体类User这里是摆设,DAO层并没有持有User对象,只是为了概念结构完整)业务层service包中,持有一个dao层的对象作为成员变量,并在自身的业务方法中,直接调用dao层对象的方法。表现层ui包中,是一个Te原创 2021-01-26 01:45:52 · 422 阅读 · 3 评论 -
Spring只能注入接口,不能注入实现类。
只能注入接口,不能注入实现类。@Controller public classTest {@AutowiredprivateRoleDao rdi; //privateRoleDao是个接口这样注入就没有问题,而注入@Controller public class Test {@AutowiredprivateRoleDaoImpl rdi;会报错:No qualifying bean of type [com.wonhoo.dao.impl.RoleDaoImpl] fo...原创 2021-01-23 01:04:00 · 3062 阅读 · 0 评论 -
通过Spring的配置XML文件,把POJO类,注入Spring IoC容器(装配Bean); 通过注解@Autowired注入Spring IoC容器
当已经写好了POJO类的Java代码之后,可以使用XML的方式去装配注入Bean整体的XML配置文件如下:文件名比如 Spring-cfg.xml下面开始写各个 <bean>构造方法的注入方式这就是用XML去配置注入POJO类,也可以使用Java注解方式、配置扫描的方式 去注入POJO类,详见其他的博客。...原创 2021-01-22 11:35:49 · 624 阅读 · 0 评论 -
通过对POJO的Java代码进行注解 和 扫描配置,来注入Spring IoC容器
1、直接在类上注解,使得该POJO注册为Spring 的Bean。@Component例如:注意,@Component 注解的类,其成员变量都是普通Java类型,而不是自定义类的对象。——————————————————————————————————————————————————————————————自动装配 @Autowired支持在自定义类的对象作为成员变量(属性)时,进行注解。____________________..原创 2021-01-22 01:43:42 · 646 阅读 · 0 评论 -
什么是Spring的Bean? 为什么Spring在有了pojo的类文件之后,还需要XML文件、注解 去做 装配、注入?
1、首先回答什么是Spring的Bean。如果准备使用Spring框架,那么书写的一个POJO的类,包括类的属性和相应的setter、getter方法,就是Spring的Bean;其实就是JavaBean。注意,Bean中一般不包括业务逻辑。Bean就对应于一个数据库表。如果用Excel的思维去解释,Bean就是一个excel的实体表,其他所有的对表中数据进行处理的其他列(比如使用了求平均数函数、求最大值函数)都属于业务逻辑。这些业务逻辑应该放在Servcie层的类中方法上去处理,这些Ser原创 2021-01-20 12:31:38 · 321 阅读 · 0 评论 -
Spring Ioc 概述、容器 、定义、生命周期
Spring Ioc概述Spring 用XML文件,去描述一个POJO的属性。比如,有以下两个POJO,果汁制造器2,果汁原料清单; JuiceMaker2 、 Source 我们可以用一个Spring中的XML文件,去描述上面两个类。注意,这里的XML文件中每个<bean />都是一个类,而其中的<property /> 代表成员变量。 测试代码: 注意,ctx是下文中会提到的 ApplicationCont...原创 2021-01-16 23:30:01 · 139 阅读 · 0 评论 -
Mybatis 学习
SqlSessionFactoryBuilder类,传入一个XML基础配置文件的字节流作为参数,就可以产生一个SqlSessionFactory类。这个类的唯一作用就是将来(工厂模式)创建SqlSession类对象。SqlSession类对象,就是对数据库进行增删改查、事务操纵的对象。...原创 2021-01-13 14:08:47 · 86 阅读 · 0 评论 -
MVC的简单项目 客户信息-增删改查 崔希凡JavaWeb 之 day-19
增删改查中,以“增”举例Servlet的功能:(MVC中的C,控制层,一般包名servlet或者web)1)把用户提交到服务器的表单数据,封装(创建)为domain包中的 Customer对象(对应一张数据库表),所以对象是在运行在服务器上的Servlet时创建的(而不是在用户的浏览器的机器上)。(最终传到DAO层中的Customer对象就产生于此时)2)对用户信息,生成 uuid,因为domain域的实体中有该字段,但没有值。3)接着把第1)步中得到的Customer对象,作为调用servic原创 2021-01-12 21:11:50 · 668 阅读 · 0 评论 -
基于动态代理的拦截器
这是一种带限制的动态代理,因为bind方法的传入参数,不仅有真实对象,还多了第二参数拦截器名字符串。动态代理类的invoke方法中,加入拦截器的逻辑,代理类的invoke逻辑图如下:其中第二参数的拦截器中的before函数的返回值,就是下图中的true或false这里原来的方法,指的就是JDK动态代理invoke原本执行的真实对象类的方法;注意,代理类的invoke方法,书这里有一个返回值result,更加标准的使用反射。(因为方法总可能有返回值的,虽然这里真实方法sayHelloWorld原创 2021-01-11 01:49:27 · 354 阅读 · 0 评论 -
JDK动态代理用法总结
需要一个接口(假设这里是 Helloable),内部有某目标方法 void sayHello() ;真实对象类需要实现该接口,并覆盖目标方法(假设这个真实对象类是HelloImpl)。代理类要做的事情(代理类 不一定要实现上述接口):1、持有一个上述接口的引用作为属性,初值为null,将来代表真实对象。2、代理类中需要调用 java.lang.reflect.Proxy 类的 Proxy.newProxyInstance( 参数1,参数2,参数3 );方法例如调用代理类时,传入的参...原创 2021-01-09 00:07:17 · 313 阅读 · 2 评论 -
在IDEA中创建Maven的普通Java项目,和Maven的Tomcat Web项目
在IDEA中创建Maven的普通Java项目勾选 create from archetype找到 quckstart 或 webapp(基于Tomcat) ,点击Next,继续输入点选Next继续,如下图,会看到IDEA默认提供bundle(赠送)的Maven版本目前是3.6.1,并且默认的用户设置文件setting.xml和仓库repository文件都在当前用户的文件夹下面。如果要修改成自己之前安装的Maven,就可以选择自己的Maven根目录,并且勾选Override...原创 2021-01-04 01:36:18 · 295 阅读 · 1 评论 -
章节四 : Spring框架的 反射技术 、 控制反转IoC 思想 (又称依赖注入DI)、面向切面编程AOP
IoC (DI) 原理Spring中的控制反转 IoC 的实现原理就是工厂模式加反射机制。1.我们首先看一下不用反射机制时的工厂模式: /** * 工厂模式 */interface fruit{ public abstract void eat();}class Apple implements fruit{ public void eat(){ System.out.println("Apple"); }}..原创 2021-01-01 21:38:42 · 386 阅读 · 1 评论 -
章节三 :JSP的 EL表达式 ,及其 运算
jsp中${ } 是EL表达式 目的是为了输出${ } 中指定的属性(参数、对象等)的值,相当于out.print该属性值到客户端浏览器的响应中。也可以省略目标范围,如:${user[name]} 等价于 ${user.name} 意思是下面三条语句:User user = (User)request.getAttribute(user);String name = user.getName();out.println(name);不加范围关键字时...原创 2020-12-27 13:58:46 · 750 阅读 · 0 评论 -
章节二 :JSP 九大对象、四大作用域、七大行为动作、三大指令、JSP的EL表达式
jsp九大内置对象 对象 描述 request HttpServletRequest类的实例 response HttpServletResponse类的实例 out JspWriter类的实例,用于把结果输出至网页上 session HttpSession类的实例 applica...原创 2020-12-26 23:48:06 · 443 阅读 · 0 评论 -
章节一 :Servlet的doGet、doPost方法,如何被HTML(JSP)页面调用
1.新建一个Dynamic Web Project项目,里面新建一个servlet,新建一个jsp,整体的框架结构如下所示:2.getLengthOrAreaServlet.java文件的代码如下所示:package servlet; import java.io.IOException;import java.io.PrintWriter; import javax.servlet.ServletException;import javax.servlet.annotat.原创 2020-12-25 10:52:58 · 2457 阅读 · 0 评论