您查询的关键词是:jsp用 什么 代替 
下面是原始网址 https://www.csdn.net/gather_21/MtTaUg0sMjE0NDQtYmxvZwO0O0OO0O0O.html 在 2022-07-06 12:20:59 的快照。

360搜索与该网页作者无关,不对其内容负责。

用什么替代jsp - CSDN
精华内容
下载资源
问答
  • 2021-02-26 13:18:07

    作为一个教师,个人的一点经验:

    1.新项目没有必要再用jsp,确实是有点过时

    2.老项目jsp用得很多,维护和升级都需要理解相关知识

    3.jsp应该怎么学:

    虽然是一种老技术,但是jsp特点鲜明,对于理解jee程序的流程有非常大的帮助,比如

    和网页夹杂在一起虽然不利于维护,但初学者只要运行就可以看到效果,你让一个初学者后台servlet输出json,前台再js解析,学习曲线未免太陡峭,另外比起servlet输出网页的痛苦,jsp简直是神物,注意我说的是对初学者。初学者最重要的是建立对于这个技术的兴趣。教学过程中最怕就是学生失去兴趣,而兴趣是最好的老师。

    隐含对象直接使用,在jsp中就可以操作request,session等jee程序必备的组件,有助于理解控制器页面跳转和数据的传递(json数据最后不都是通过response写的吗)

    在此基础上,servlet的相关知识可以直接上手(本身就是一回事)

    再进一步将jsp中所有逻辑代码转换到servlet,jsp页面只需要展示数据,辅之以jstl实现页面无脚本,这对于理解前后端概念很有帮助。

    按照这个思路,对同一个项目反复迭代,不断引入新技术和新理念,学生才有可能通过内在的动力跟着往下学。

    我现在用一个网上书店作为贯穿案例,第一步使用jsp实现基本逻辑,然后重构把jsp中所有业务逻辑代码挪到servlet,再重构,让jsp实现无脚本,继而用html,json和ajax替换jsp(此时servlet仍保留路由功能),再将路由功能转至前台,最后解决跨域等问题后,前台代码集体转移到另一台服务器,实习前后分离。

    整个过程并不复杂,学习时间也不长,花这点时间熟悉这一技术绝对是事半功倍的。

    更多相关内容
  • Thymeleaf替换JSP

    千次阅读 2019-01-21 19:05:01
    Thymeleaf替换JSP
                   

    用Thymeleaf替换JSP

    作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs

    Thymeleaf是一个Java库。它是XML、XHTML、HTML5等格式的模板引擎,可以用于Web项目和非Web项目。Thymeleaf很适合作为Web应用的视图的业务逻辑层,还可以在离线环境下处理XML文件。




    Thymeleaf可以作为Spring MVC的可选模块,也可以直接作为JSP的替代。Thymeleaf提供了两个版本,分别是Standard方言与SpringStandard(Spring MVC 3)方言,并且可以通过创建自定义方言进行扩展。

    Thymeleaf的主要目标在于提供一种可被浏览器正确显示的、格式良好的模板创建方式,因此也可以用作静态建模。

    Thymelea模板引擎与Velocity、FreeMarker相似。

    代码例子:
    <table>  <thead>    <tr>      <th th:text="#{msgs.headers.name}">Name</th>      <th th:text="#{msgs.headers.price}">Price</th>    </tr>  </thead>  <tbody>    <tr th:each="prod : ${allProducts}">      <td th:text="${prod.name}">Oranges</td>      <td th:text="${#numbers.formatDecimal(prod.price,1,2)}">0.99</td>    </tr>  </tbody></table>

    今天(2013.11.4日),Thymeleaf发布了最新的2.1.0版。

    下载地址:https://sourceforge.net/projects/thymeleaf/files/thymeleaf/2.1.0.RELEASE/


               

    再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

    展开全文
  • 什么jsp,它有什么+jsp的本质是什么

    千次阅读 多人点赞 2020-11-30 13:49:40
    jsp的全称是:java servlet pages,...我们来尝试用jsp回传html页面来试试 我们先来创建一个jsp文件 如图,在web下面我们可以创建一个jsp文件 jsp文件,如下和servlet打印出来的html页面一样,但是这个方便简洁了很多

    什么是jsp,它有什么用?

    jsp的全称是:java servlet pages,java的服务器页面
    主要作用:替代servlet程序回传html页面的数据,因为servlet程序回传html页面数据是一件非常繁琐的事情,开发成本和维护成本都极高

    如下:
    这是servlet回传html页面的方法,超级麻烦
    在这里插入图片描述
    虽然也能打印成功



    我们来尝试用jsp回传html页面来试试
    我们先来创建一个jsp文件
    在这里插入图片描述如图,在web下面我们可以创建一个jsp文件


    jsp文件,如下在这里插入图片描述在这里插入图片描述和servlet打印出来的html页面一样,但是这个方便简洁了很多

    jsp小结

    1. 创建一个jsp文件在这里插入图片描述(需要在在web目录下)在这里插入图片描述
    2. jsp 如何访问:
      jsp 页面和 html 页面一样,都是存放在 web 目录下。访问也跟访问 html 页面一样
      比如:在 web 目录下有如下的文件:
      web 目录

      a.html 页面 访问地址是 =======>>>>>> http://ip:port/工程路径/a.html
      b.jsp 页面 访问地址是 =======>>>>>> http://ip:port/工程路径/b.jsp
      在这里插入图片描述

    jsp的本质是什么

    jsp页面本质上是一个servlet程序

    当我们第一次访问 jsp 页面的时候。Tomcat 服务器会帮我们把 jsp 页面翻译成为一个 java 源文件。并且对它进行编译成为.class 字节码程序。我们打开 java 源文件可以发现发现其里面的内容是:在这里插入图片描述我们看原代码可以发现,HttpJspBase 类,它直接地继承了 HttpServlet 类,即,jsp 翻译出来的 java 类,它间接了继 承了 HttpServlet 类,也就是说,翻译出来的是一个 Servlet 程序
    如下:在这里插入图片描述通过翻译的 java 源代码我们就可以得到结果:jsp 就是 Servlet 程序

    我们去观察翻译出来的 Servlet 程序的源代码,可以发现。其底层实现,也是通过输出流。把 html 页面数据回传给客户端如下:在这里插入图片描述

    展开全文
  • Thymeleaf(替代JSP)

    2020-12-27 13:10:50
    Thymeleaf 是一个跟 FreeMarker 类似的模板引擎,它可以完全替代 JSP 。相较与其他的模板引擎,它有如下特点: 动静结合:Thymeleaf 在有网络和无网络的环境下皆可运行,无网络显示静态内容,有网络后台得到数据...

    Thymeleaf

    1.简介

    Thymeleaf 是一个跟 FreeMarker 类似的模板引擎,它可以完全替代 JSP 。相较与其他的模板引擎,它有如下特点:

    • 动静结合:Thymeleaf 在有网络和无网络的环境下皆可运行,无网络显示静态内容,有网络用后台得到数据替换静态内容
    • 与SpringBoot完美整合,springboot默认整合thymeleaf

    2.编写接口

    2.1 service层

    @Service
    public class UserService {
    //在通用mapper文章中已经定义好了的类
    @Autowired
    private UserMapper userMapper;
    public List<User> findAll() {
    return userMapper.selectAll();
    }
    }
    

    2.2 controller层

    @Controller
    public class UserController {
    @Autowired
    private UserService userService;
    @RequestMapping("/all")
    public String findAll(ModelMap map) {
    List<User> all = userService.findAll();
    map.addAttribute("all",all);
    //跳转classpath:/templates/users.html
    return "user";
    }
    }
    

    3.引入启动器

    3.1依赖文件

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>
    

    3.2自动生成ThymeleafProperties

    • 指定静态资源路径为"classpath:/templates/"
    • 指定后缀为html
    public class ThymeleafProperties {
    private static final Charset DEFAULT_ENCODING;
    public static final String DEFAULT_PREFIX = "classpath:/templates/";
    public static final String DEFAULT_SUFFIX = ".html";
    private boolean checkTemplate = true;
    private boolean checkTemplateLocation = true;
    private String prefix = "classpath:/templates/";
    private String suffix = ".html";
    private String mode = "HTML";
    private Charset encoding;
    private boolean cache;
    private Integer templateResolverOrder;
    private String[] viewNames;
    private String[] excludedViewNames;
    private boolean enableSpringElCompiler;
    private boolean enabled;
    private final ThymeleafProperties.Servlet servlet;
    private final ThymeleafProperties.Reactive reactive;
    public ThymeleafProperties() {
    this.encoding = DEFAULT_ENCODING;
    this.cache = true;
    this.enabled = true;
    this.servlet = new ThymeleafProperties.Servlet();
    this.reactive = new ThymeleafProperties.Reactive();
    }
    

    3.3创建静态资源到/templates

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Title</title>
    </head>
    <body>
    <span style="">欢迎光临!</span>
    <hr/>
    <table>
    <tr>
    <th>序号</th>
    <th>id</th>
    <th>姓名</th>
    <th>用户名</th>
    <th>年龄</th>
    <th>性别</th>
    <th>生日</th>
    <th>备注</th>
    <th>操作</th>
    </tr>
    </table>
    </body>
    </html>
    

    3.4.启动主程序测试

    4.修改html命名空间

    • 把html 的名称空间,改成: xmlns:th=“http://www.thymeleaf.org” 会有语法提示
    <!DOCTYPE html>
    <html xmlns:th="http://www.thymeleaf.org">
    <head>
    <meta charset="UTF-8">
    <title>首页</title>
    <style type="text/css">
    table {border-collapse: collapse; font-size: 14px; width: 80%; margin: auto}
    table, th, td {border: 1px solid darkslategray;padding: 10px}
    </style>
    </head>
    <body>
    <div style="text-align: center">
    <span style="color: darkslategray; font-size: 30px">欢迎光临!</span>
    <hr/>
    <table class="list">
    <tr>
    <th>id</th>
    <th>姓名</th>
    <th>用户名</th>
    <th>年龄</th>
    <th>性别</th>
    <th>生日</th>
    <th>备注</th>
    <th>操作</th>
    </tr>
    </table>
    </div>
    </body>
    </html>
    

    5.案例

    <!DOCTYPE html>
    <html xmlns:th="http://www.thymeleaf.org">
    <head>
    <meta charset="UTF-8">
    <title>首页</title>
    <style type="text/css">
    table {border-collapse: collapse; font-size: 14px; width: 80%; margin: auto}
    table, th, td {border: 1px solid darkslategray;padding: 10px}
    </style>
    </head>
    <body>
    <div style="text-align: center">
    <span style="color: darkslategray; font-size: 30px">欢迎光临!</span>
    <hr/>
    <table class="list">
    <tr>
    <th>id</th>
    <th>姓名</th>
    <th>用户名</th>
    <th>年龄</th>
    <th>性别</th>
    <th>生日</th>
    <th>备注</th>
    <th>操作</th>
    </tr>
    <tr th:each="user : ${all}">
    <td th:text="${user.id}">123</td>
    <td th:text="${user.name}">zhangsan</td>
    <td th:text="${user.userName}">zhangsan</td>
    <td th:text="${user.age}">22</td>
    <td th:text="${user.sex} == 1 ? '': ''"></td>
    <td th:text="${#dates.format(user.birthday,'yyyy-MM-dd')}">1998-01-01</td>
    <td th:text="${user.note}">1</td>
    <td>
    <a href="">删除</a>
    <a href="">修改</a>
    <a href="">审核</a>
    </td>
    </tr>
    </table>
    </div>
    </body>
    </html>
    
    • 静态显示静态内容

    在这里插入图片描述

    • 动态显示数据库内容

    在这里插入图片描述

    6.缓存

    Thymeleaf会在第一次对模板解析之后进行缓存,极大的提高了并发处理能力。但是这给我们开发带来了不便,修改页面后并不会立刻看到效果,我们开发阶段可以关掉缓存使用:

    # 开发阶段关闭thymeleaf的模板缓存
    spring.thymeleaf.cache=false
    
    展开全文
  • 我曾经也是,但是几年前我抛弃了它们,并且再也没有JSP了。JSP 是个很好的概念,但是它却剥夺了 web 开发的乐趣。 对我而言,这些都是小事,比如无法在页面模板上使用单独的文件header.jsp 和 footer.jsp,不能...
  • 主要介绍了JSP开发之Spring方法注入之替换方法实现的相关资料,需要的朋友可以参考下
  • 主要介绍了JSP结合js实现img中src更新请求的方法,以实例形式较为详细的分析了前台页面js控制及后台功能action部分实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
  • //// StrReplace.java//package forum;import java.util.*;/*** Title:* Description:* Copyright: Copyright (c) 2001* Company:* @author* @version 1.0*/public class StrReplace {...new StringBuffer();String
  • 什么需要JSPJSP是为了简化Servlet的工作出现的替代品,Servlet输出HTML非常困难,JSP就是替代Servlet输出HTML的。简单使用一下JSP在idea下生成一个JSP,我们来看一下JSP什么样子看起来就像一个HTML页面,前...
  • //// StrReplace.java//...http://www.gaodaima.com/41545.htmljsP中的字符替换函数str_replace()实现import java.util.*;/*** Title:* Description:* Copyright: Copyright (c) 2001* Company:* @author* @version...
  • EL 表达式的作用:EL 表达式主要是代替 jsp 页面中的表达式脚本在 jsp 页面中进行数据的输出。 因为 EL 表达式在输出数据的时候,要比 jsp 的表达式脚本要简洁很多。 EL 表达式的格式是:${表达式} EL 表达式在输出 ...
  • Servlet+MySql+Web(HTML+CSS+JSP技术+EL表达式)通过IDEA来实现数据库的增删改查(crud))-附件资源
  • JSP到底是什么

    千次阅读 2021-10-18 15:50:17
    JSP到底是什么 JSP与PHP、ASP、ASP.NET等语言类似,都运行在服务端。通常返回给客户端的就是一个HTML文件,因此只要有浏览器就能查看JSP页面。 JSP使用JSP标签在HTML网页中插入Java代码,标签通常以<%开头,以%&...
  • 当时发现安装jar包中缺少了相应的jsp。然后直接将相应的jsp传给测试的同事。放到tomcat中对应的位置后启动仍然不好使。  解决方法:  删除这个路径下对应的项目文件夹。/apache-tomcat-8.0.35/work/Catalina/...
  • JSP学习经验小结分享

    2021-01-08 20:18:51
    用JSP完全可替代它。 一、JSP工作原理 在一个JSP文件第一次被请求时,JSP引擎把该JSP文件转换成为一个servlet。而这个引擎本身也是一个servlet,在JSWDK或WEBLOGIC中,它就是JspServlet。 JSP引擎先把该JSP文件转换...
  • } //如果点击按钮为自动换行 if(e.getActionCommand()==”自动换行”) { //判断当前状态 if(changelineItem.isSelected()==true) { //设置滚动条状态 jsp.setHorizontalScrollBarPolicy(jsp.HORIZONTAL_SCROLLBAR_...
  • 什么jsp替代了Earlier this week we asked you to share your favorite alternatives to Window’s native file explorer. Now we’re back to highlight your suggestions, tips, and tricks. 本周早些时候,...
  • 本人过 字符替换最好3个软件。 首先第一是 应用到传奇MIR 替换,非常好用 以后开发过程当中 某些XP 搜索不支持文本内容查找。 现在 WIN7支持 文本内容包含关键字查找也不健全。特意再次发布此工具。 3款软件优点...
  • jsp中page指令用法详解

    2021-01-08 20:43:52
    属性值两边的双引号可以替换为单引号,但引号标记不能完全省略。如果要在属性值中使用引号,则要在它们之前添加反斜杠,’ 使用 \’,” 使用 \” <% directive attribute=value %> <% directive ...
  • 这篇文章主要介绍JSP中的脚本、注释、表达式等知识点,已经如何在JSP页面中使用Java代码编写程序。 往期文章 目录 一、JSP的注释 注释,我们都知道是啥了,就是解释说明你的代码是干啥的,注释是不影响程序的...
  • 该资源为学生管理系统JSP+Servlet+DAO的升级版本,该版本加入了Maven的支持,使用了MyBatis替代了之前DAO的部分,为学习MyBatis框架提供了相关的代码辅助。
  • struts2结合velocity做为表现层的整合框架,详细演示了velocity的标签用法,不需要数据库支持,Action层模拟数据。
  • jsp介绍

    2021-10-11 16:14:10
    使用JSP技术替换原有的Servlet版View,可以更方便的编辑出更好看的网页。 Servlet实现的View在进行动态页面开发时存在的问题: 1. 开发繁琐,必须实现Servlet接口,重写service方法。 2. 一旦修改,必须要重新编译、...
  • jsp网页计数器,使用session和application刷新不重复计数,数字替换成图片,没有附加图片,图片自己网上下载,代码里有相应的逻辑处理。不要直接抄,很粗劣,给大家做个参考,祝学习顺利!
  • 2、编译指令是在将JSP编译成Servlet时起作用,而动作指令可替换JSP脚本,是JSP脚本标准化写法 您可能感兴趣的文章:JSP常见的三个编译指令page、include、taglibJSP编译指令page、include详解JSP指令元素(page指令...
  • 搜索热词JSP作为视图层展示数据,已经有很长一段时间了,不管是在校学习还是...图描述就是如下:通过上述两张图,足以知道,不管是JSP还是Servlet最后都是以HTML的形式在前端显示。关于JSP和Servlet学习教程可以...
  • 可插拔的模块设计,模板加载方式,el引擎,运行模式均可通过不同的实现替换。 多种方式自定义标签,原生的java代码自定义标签或者直接通过页面自定义标签。 支持自定义el转码,不需要对el表达式的输出做html转码,...
  • JSP修改替换不生效

    千次阅读 2018-09-26 17:55:04
    需要调整JSP页面的一个内容,需要把它注释掉,但是修改后,Linux服务器替换后没生效。 页面关系 需要修改的页面是B,使用 include 从A页面引入。 &lt;%@ include file="/rdf/view/B.jsp"%&gt; ...

空空如也

空空如也

1 2 3 4 5 ... 20