1.一般方法:在页面加载时载入数据

  • 首先,新建一个包,在包内创建一个类,类实现接口Servlet-javax.servlet

  • 然后,在web.xml文件里配置如下

      <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
    <display-name>adminsystem1</display-name>
    <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
    </welcome-file-list>
    <servlet>
    //定义一个名称
    <servlet-name>servlet-router</servlet-name>
    //第一步的类
    <servlet-class>com.csit.adminsystem1.controllers.RouterController</servlet-class>
    </servlet>
    //输入后缀为.html则都要调用servlet-router,即调用RouterController类
    <servlet-mapping>
    <servlet-name>servlet-router</servlet-name>
    <url-pattern>*.html</url-pattern>
    </servlet-mapping>
    </web-app>

如果不存在web.xml文件,则右键项目名称—>Java EE Tools—>Generate Deployment descriptor stub

  • 新建两个类,比如分别为ProductDao和ProductService,在ProductDao里提供信息处理的数据操作,

    在ProductService里提供信息处理服务,下面给出样例代码:

ProuductDao.java

	package com.csit.adminsystem1.daos;

	import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List; import com.csit.adminsystem1.domains.TProduct;
import com.csit.adminsystem1.utils.JdbcUtil; /**
* 提供商品信息处理的数据操作(dao)
*
* @author Administrator
*
*/
public class ProductDao {
//JdbcUtil是自己定义的一个类,里面定义了静态的conn用于连接数据库
Connection conn = JdbcUtil.conn;
public List<TProduct> findAll() throws SQLException{
String sql = "select * from t_product";
PreparedStatement ps = conn.prepareStatement(sql);
//将执行SQL语句后结果存于rs里
ResultSet rs = ps.executeQuery();
List<TProduct> products = new ArrayList<TProduct>();
while(rs.next()) {
TProduct product = new TProduct();
product.setProductName(rs.getString("product_name"));
product.setProductId(rs.getInt("product_id"));
product.setProductPrice(rs.getDouble("product_price"));
products.add(product);
}
return products;
}
}

ProductService.java

	package com.csit.adminsystem1.services;

	import java.sql.SQLException;
import java.util.List; import com.csit.adminsystem1.daos.ProductDao;
import com.csit.adminsystem1.domains.TProduct; /**
* 提供商品信息处理服务(service)
*
* @author Administrator
*
*/
public class ProductService {
ProductDao po = new ProductDao();
//这里只是执行findAll方法,有涉及到信息处理的可以自行添加对应的处理方法
public List<TProduct> findAll() throws SQLException{
return po.findAll();
}
}
  • 下面实现RouterController的service方法

      ProductService ps =new ProductService();
    String content="";
    public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
    // TODO Auto-generated method stub
    //将返回的数据存在products里
    try {
    req.setAttribute("products", ps.findAll());
    } catch (SQLException e) {
    e.printStackTrace();
    }
    //index.jsp为数据要显示的页面
    req.getRequestDispatcher("index.jsp").forward(req, res); }
  • 在index.jsp中编写如下代码

      <%
    //将products里的数据强制转换为List<TProduct>类型,TProduct是自己定义的一个类,用于存放从数据库中查询的数据
    List<TProduct> products = (List<TProduct>)(request.getAttribute("products"));
    for(TProduct product:products){
    out.println("<li><input type='checkbox' />" + "<p>"+product.getProductName()+" "+product.getProductPrice()+"</p>" + "</li>");
    }
    %>

注意在开头添加引用路径,根据自己的路径来配置

<%@page import="com.csit.adminsystem1.domains.*,java.util.*"%>

运行结果如下图

JSP前后台数据交互的更多相关文章

  1. Phonegap开发的前后台数据交互

    在用Phonegap开发时,需要进行前后台数据交互,在网上找资料,很多东西让人一头雾水,最后借鉴了下面的博客: http://blog.sina.com.cn/s/blog_681929ae01017 ...

  2. Spring MVC 前后台数据交互

    本文是转载文章,感觉比较好,如有侵权,请联系本人,我将及时删除. 原文网址地址:<Spring MVC 前后台数据交互> 1.服务端数据到客户端 (1)返回页面,Controller中方法 ...

  3. Ajax实现xml文件数据插入数据库(二)--- ajax实现与jsp的数据交互。

    在上一篇文章中我们成功得到了重新组织后的数据,接下来需要做的便是将数据插入到数据库中了.在与数据库打交道的过程中有一些方法是普遍的,我们将这些通用方法封装到一个DbUtil类中,以便复用,封装好的Db ...

  4. 用PHP和Ajax进行前后台数据交互——以用户登录为例

    很多网站中都有用户登录系统,要完成用户的注册和登陆,就一定要用到前后台的数据交互.在这里以简单的用户注册和登陆为例介绍一下前后台交互的大致流程. 首先,我们来做一个简单的登陆界面. 这里为了方便我使用 ...

  5. Django学习笔记(8)——前后台数据交互实战(AJAX)

    这里将自己这段时间学习的关于前后台数据交互的笔记写在这里,这里包含了Django传输数据给JS,AJAX的相关问题,跨域问题,如何解决AJAX的跨域问题等等.比较凌乱,请看到这篇博客的盆友见谅,如果我 ...

  6. vue仓库、组件间通信、前后台数据交互、前端储存数据大汇总

    目录 路由重定向 仓库介绍 vuex插件:可以完成任意组件间信息交互(移动端) 前端存储数据大汇总 前后台交互方式(重点) 前后台数据交互 axios插件:完成前后台ajax交互的 同源策略 - 前后 ...

  7. 基于ssh框架的highcharts前后台数据交互实例

    Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表,并且免费提供给个人学习.个人网站和非商业用途使用.HighCh ...

  8. Asp.net--Ajax前后台数据交互

    转自:http://www.cnblogs.com/guolebin7/archive/2011/02/22/1961737.html 代码由前后台两部分组成: 前台:(新建一个Default.asp ...

  9. 玩转Web之Json(二)----jquery easy ui + Ajax +Json+SQL实现前后台数据交互

    最近在学Json,在网上也找过一些资料,觉得有点乱,在这里,我以easy ui的登录界面为例来说一下怎样用Json实现前后台的数据交互 使用Json,首先需要导入一些jar包,这些资源可以在网上下载到 ...

随机推荐

  1. 201521123034 《Java程序设计》第9周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前 ...

  2. 201521123116 《java程序设计》第十二周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 书面作业 Q1.字符流与文本文件:使用 PrintWriter(写),BufferedReader(读) ...

  3. CSS的常用属性

    刚开始学习前段的我,还处于初级阶段,一些东西还是会有搞不明白的时候,还是要大家多多理解.今说就一些关于CSS的常用属性吧! 一.CSS常用选择器 CSS选择器应该说是一个非常重要的工具吧,选择器用得好 ...

  4. 【JVM命令系列】jmap

    命令基本概述 Jmap是一个可以输出所有内存中对象的工具,甚至可以将VM 中的heap,以二进制输出成文本.打印出某个java进程(使用pid)内存内的,所有'对象'的情况(如:产生那些对象,及其数量 ...

  5. URL编码解决

    与其他系统对接时遇到的问题URL中传递认证码,URL默认只允许传递ASCII码中的数据,所以浏览器默认会进行一次编码将%等特殊符号转义后台web服务器收到URL中的参数,会默认进行一次解码,但遇到的问 ...

  6. Android 从ImageView中获取Bitmap对象方法

    showImageView.setDrawingCacheEnabled(true); Bitmap bitmap=showImageView.getDrawingCache(); showImage ...

  7. python采用 多进程/多线程/协程 写爬虫以及性能对比,牛逼的分分钟就将一个网站爬下来!

    首先我们来了解下python中的进程,线程以及协程! 从计算机硬件角度: 计算机的核心是CPU,承担了所有的计算任务.一个CPU,在一个时间切片里只能运行一个程序. 从操作系统的角度: 进程和线程,都 ...

  8. thinkphp增删改查

    添加数据: (添加单行数据) // 添加成功返回1,失败返回0 (添加多行数据) // 返回添加数据的条数 删除数据: 修改数据: (修改单个字段) (修改多个字段) // 修改成功返回1,失败返回0 ...

  9. Centos7搭建swarm集群

    1. 准备 两台虚拟机,IP分别为: 192.168.1.104 192.168.1.105 保证能互相 ping 通 2. 修改虚拟机的 host,分别任 c1.c2 在 192.168.1.105 ...

  10. ThinkPHP中使用PHPMailer邮件类

    第一步.添加PHPMailer类库将下载后的文件解压,将PHPMail目录移动至ThinkPHP目录中的Vendor内.(请确保class.phpmailer.php文件就在ThinkPHP\Vend ...