java+mysql+jsp分页处理(数据源)

jsp+mysql实现分页 .恭喜你  登录成功! 返回重新登录 用户信息列表 int pageSize = 3; int pageNow = 1;//默认显示第一页    int pageCount = 0; //通过pageSize 和rowCount  计算 int rowCount = 0; //对下面传过来的pageNow的值做处理 String s_pa 阅读详情

 1.java代码Page.java

 /**
 *
 */
package com.bean;

import java.util.Vector;

import com.dao.QueryHelpDao;

/**
 * @author Admin
 *
 */
public class Page {

 private int curPage;// 当前的几页

 private int maxPage;// 共有多少页

 private int maxRowCount; // 共有多少行

 private int rowsPerPage;// 每一页有多少行,默认为10行

 private Vector vector = new Vector();// 用来存放最后的查询结果

 private String countSql = "";// 统计总的查询结果数目的sql

 private String selectSql = "";// 查询SQL语句

 private String formName = "item"; // 表单的名称

 public String getCountSql() {
  return countSql;
 }

 public void setCountSql(String countSql) {
  this.countSql = countSql;
 }

 public int getCurPage() {
  return curPage;
 }

 public void setCurPage(int curPage) {
  this.curPage = curPage;
 }

 public String getFormName() {
  return formName;
 }

 public void setFormName(String formName) {
  this.formName = formName;
 }

 public int getMaxPage() {
  return maxPage;
 }

 /**
  * 根据总行数计算总共有多少页
  *
  * @param maxPage
  */
 public void setMaxPage() {
  this.maxPage = (this.maxRowCount % this.rowsPerPage == 0) ? this.maxRowCount
    / this.rowsPerPage
    : this.maxRowCount / this.rowsPerPage + 1;
 }

 public int getMaxRowCount() {

  return maxRowCount;
 }

 /**
  * 返回查询结果的总记录数
  *
  * @param maxRowCount
  */
 public void setMaxRowCount() {
  // System.out.println();
  this.maxRowCount = QueryHelpDao.getInt(this.getCountSql());
 }

 public int getRowsPerPage() {
  return rowsPerPage;
 }

 public void setRowsPerPage(int rowsPerPage) {
  this.rowsPerPage = rowsPerPage;
 }

 public String getSelectSql() {
  return selectSql;
 }

 public void setSelectSql(String selectSql) {
  this.selectSql = selectSql;
 }

 public Vector getResult() {
  setMaxRowCount();// 总结果数
  setMaxPage(); // 总的页数
  String objectSql = getSelectSql() + " limit " + (getCurPage() - 1)*getRowsPerPage() + " , " + getCurPage() * getRowsPerPage();
  System.out.println("objectSql = " + objectSql);
  vector = QueryHelpDao.getHelp(objectSql);
  return vector;
 }
}

 

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------

QueryHelpDao.java

   package com.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Hashtable;
import java.util.Vector;

import com.util.DataSourceConn;

/**
 * @author Admin
 *
 */
public class QueryHelpDao {
 private static Connection conn ;
 private static Statement state ;
 private static ResultSet rs ;
 private static PreparedStatement pstmt ;
    /**
     * 传入一个查询将结果放入Vector中
     * @param querySql
     * @return
     */
 public static Vector getHelp(String querySql) {
  
  Vector vector = new Vector();
  conn = DataSourceConn.getConnection();
  try {
   conn.setReadOnly(true);
   pstmt = conn.prepareStatement(querySql);
   rs = pstmt.executeQuery();
   ResultSetMetaData rsmd = rs.getMetaData();
   int i = rsmd.getColumnCount();

   String as[] = new String[i];

   for (int j = 1; j <= i; j++) {
    as[j - 1] = (rsmd.getColumnName(j)).toUpperCase();
   }

   Hashtable hashtable = null;
   for (; rs.next(); vector.addElement(hashtable)) {
    hashtable = new Hashtable();
    for (int k = 1; k <= i; k++) {
     Object obj = rs.getObject(k);
     String s = as[k - 1];
     if(obj!=null) {
      hashtable.put(s, obj) ;
     } else {
      hashtable.put(s, "") ;
     }
    }
   }

  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }finally{
   try {
    if (rs != null)
     rs.close();
   } catch (SQLException e) {
      e.printStackTrace() ;
   }
   try {
    if (pstmt != null)
     pstmt.close();
   } catch (SQLException e) {
    e.printStackTrace() ;
   }
   try {
    if (conn != null)
     conn.close();
   } catch (SQLException e) {
      e.printStackTrace() ;
   }
  }
  return vector ;
 }
 /**
  * 本方法的使用应该注意,只能使用统计函数count(*)例如:
  * select count(*) from forumpost where forumid=1;
  * @param querySql
  * @return
  */
 public static int getInt(String querySql) {
  int temp = 0;
     conn = DataSourceConn.getConnection();
  try{
   pstmt = conn.prepareStatement(querySql);
   rs = pstmt.executeQuery();
   while(rs.next()){
    temp = rs.getInt(1);
   }
  }catch(SQLException e){
   System.out.println("出现异常:/n"+"QueryHelp.getInt("+querySql+")/n");
   System.out.println("下面是详细信息:/n");
   e.printStackTrace();
  }finally{
   try {
    if (rs != null)
     rs.close();
   } catch (SQLException e) {
   }
   try {
    if (pstmt != null)
     pstmt.close();
   } catch (SQLException e) {
   }
   try {
    if (conn != null)
     conn.close();
   } catch (SQLException e) {
   }
  }
  
  return temp;
 } 
}
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------

2.JSP代码page.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="com.bean.*"%>
<%@ page import="com.dao.*"%>
<jsp:useBean id="pages" scope="page" class="com.bean.Page" />
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
  <title>分页测试</title>

  <meta http-equiv="pragma" content="no-cache">
  <meta http-equiv="cache-control" content="no-cache">
  <meta http-equiv="expires" content="0">
  <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
  <meta http-equiv="description" content="This is my page">
  <!--
 <link rel="stylesheet" type="text/css" href="styles.css">
 -->
  <script language="javascript">
        function jumping() {
            document.item.submit() ;
            return ;
     }
        function goPage(pagenum) {
     document.item.jumpPage.value=pagenum;
     document.item.submit() ;
     return ;
     }
   </script>
 </head>

 <%
  PageInfroDao pageInfro = new PageInfroDao();
  String countSql = "select count(*) from forumpost ";
  String jumpPage = (request.getParameter("jumpPage") == null) ? "1" : request.getParameter("jumpPage");  
  System.out.println("jumpPage = " + jumpPage);
  String objSql = "SELECT * FROM forumpost ";
  System.out.println("objSql = " + objSql);

  //SimplePageDb2 sp = new SimplePageDb2();
  pages.setRowsPerPage(4); //设置每页显示多少行记录
  pages.setCurPage(Integer.parseInt(jumpPage)); //设置要跳转到哪一页
  pages.setCountSql(countSql); //设置统计所有记录说的sql
  pages.setSelectSql(objSql); //设置要查询的sql
  pages.setFormName("item"); //设置form表单的名字
  java.util.Vector vector = pages.getResult();
  /*
   //Page pages = new Page() ;
   pages.setRowsPerPage(2) ; //设置每页显示多少行记录
   pages.setCurPage(Integer.parseInt(jumpPage)) ;//设置要跳转到那一页
   pages.setCountSql(countSql) ;//设置统计的总信息条数
   pages.setSelectSql(objSql) ;//设置要查询的sql
   */
  //java.util.Vector vector = pages.getResult() ;//将查询结果放到Vector中
 %>
 <body>
  <form action="page.jsp" method="post" name="item">
   <table border="1" bordercolor="blue">
    <tr>
     <td>
      顺号
     </td>
     <td>
      帖子标题
     </td>
     <td>
      发言人
     </td>
    </tr>
    <%
       int start = (Integer.parseInt(jumpPage) - 1)
       * pages.getRowsPerPage() + 1;
     String PostName = "";
     String SpokesMan = "";
     //out.println("vector="+vector);
     //out.println("vector.size()="+vector.size());
     for (int i = 0; i < vector.size(); i++) {
      java.util.Hashtable hash = (java.util.Hashtable) vector
      .elementAt(i);
      PostName = (String) hash.get("POSTNAME");
      SpokesMan = (String) hash.get("SPOKESMAN");
    %>
    <tr>
     <td>
      <%=start + i%>
     </td>
     <td>
      <%=PostName%>
     </td>
     <td>
      <%=SpokesMan%>
     </td>
    </tr>
    <%
    }
    %>
   </table>
   <table>
    <tr>
     <td>
      每页
      <%=pages.getRowsPerPage()%>
      行&nbsp;&nbsp;&nbsp; 共
      <%=pages.getMaxRowCount()%>
      行&nbsp;&nbsp;&nbsp; 第
      <%=pages.getCurPage()%>
      页&nbsp;&nbsp;&nbsp; 共
      <%=pages.getMaxPage()%>
      页&nbsp;&nbsp;&nbsp;
      <br>
      <%
      if (pages.getCurPage() == 1) {
      %>

      首页&nbsp;&nbsp;上一页
      <%
      } else {
      %>
      <a href="javascript:goPage(1)"> 首页</a>&nbsp;&nbsp;
      <a href="javascript:goPage(<%=(pages.getCurPage() - 1)%>)">上一页</a>
      <%
      }
      %>
      <%
       if (pages.getCurPage() == pages.getMaxPage()) {
      %>
      &nbsp;&nbsp;下一页&nbsp;&nbsp; 尾页
      <%
      } else {
      %>
      <a href="javascript:goPage(<%=(pages.getCurPage() + 1)%>)">下一页</a>&nbsp;&nbsp;
      <a href="javascript:goPage(<%=pages.getMaxPage()%>)">尾页</a>&nbsp;&nbsp;
      <%
      }
      %>
      转到第
      <select name="jumpPage" onchange="jumping()">
       <%
        for (int i = 1; i <=

        pages.getMaxPage(); i++) {
       %>
       <%
         if (i ==

         pages.getCurPage()) {
       %>
       <option selected value=<%=i%>>
        <%=i%>
       </option>
       <%
       } else {
       %>
       <option value=<%=i%>>
        <%=i%>
       </option>
       <%
       }
       %>
       <%
       }
       %>
      </select>
     </td>
    </tr>
   </table>
  </form>
 </body>
</html>
3.连接池

package com.util;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

/**
 * @author Admin
 *
 */
public class DataSourceConn {
 
    /**
     * 获得连接池资源,获得连接
     * @return
     */
 public static synchronized Connection getConnection() {
  DataSource ds = null;
  //获得连接池
  try {
   Context initCtx = new InitialContext();
   Context envCtv = (Context) initCtx.lookup("java:comp/env");//固定用法
   ds = (DataSource) envCtv.lookup("jdbc/dataSource");
//   System.out.println("ds = " +ds) ;
   // 获得数据库连接
   if (ds != null) {
    try {
     return ds.getConnection();
    } catch (SQLException e) {
     // TODO Auto-generated catch block
     System.out.println("连接池没有找到");
     e.printStackTrace();
    }

   }
  } catch (NamingException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return null;
 }
   
 public static synchronized void closeConnection(Connection conn) {
  if(conn==null) {
   try {
    conn.close() ;
    
   } catch (SQLException e) {
    // TODO Auto-generated catch block
    System.out.println("关闭连接失败");
    e.printStackTrace();
   }
  }
 }
 
 public static synchronized void closeStatement(Statement state) {
  if(state==null) {
   try {
    state.close() ;
   } catch (SQLException e) {
    // TODO Auto-generated catch block
    System.out.println("关闭Statement失败") ;
    e.printStackTrace();
   }
  }
 }
 
 public static synchronized void closeResultSet(ResultSet rs) {
  if(rs==null) {
   try {
    rs.close() ;
   } catch (SQLException e) {
    // TODO Auto-generated catch block
    System.out.println("关闭ResultSet失败") ;
    e.printStackTrace();
   }
  }
 }
 
 public static synchronized void closePreparedStatement(PreparedStatement pstmt) {
  if(pstmt==null) {
   try {
    pstmt.close() ;
   } catch (SQLException e) {
    // TODO Auto-generated catch block
    System.out.println("关闭ResultSet失败") ;
    e.printStackTrace();
   }
  }
 }
}

基于Mysql+Servlet+JSP的作业提交系统 一、介绍 1.Mysql 由于之前已经介绍过,此处不再赘述。 Mysql安装介绍 2.Servlet Servlet是使用Java语言编写的运行在服务器端的程序,Servlet由Servlet容器提供,Servlet容器将Servlet动态地加载到服务器上,使用HTTP请求和HTTP响应与客户端进行交互。 特点:方便、跨平台、具有灵活性和拓展性。 Servlet接口中定义了五个抽象方法: voi... 阅读详情

相关推荐

JavaEE中简单的MySQL数据源获取教程

Java EE(Java Platform, Enterprise Edition)是用于开发企业级应用的一套标准,它提供了一个基于组件、多层的、可伸缩的、安全的和基于标准的企业级计算平台。JavaEE建立在Java SE(Standard Edition)的基础上,并在后者的基础上加入了大量适用于企业环境的API和服务,比如JSP(JavaServer Pages)、Servlets、EJB(Enterprise JavaBeans)、JMS(Java Message Service)等。

weixin_42581003的博客 993

jsp+java bean+mysql数据库进行分页显示

原来没有写过,听朋友说,比较难,就试一下,还是挺简单的,只不过,具体实用方面还得自己写,没有什么难的,自己看看就懂了。bean文件:package bean;/** * jsp+java bean+mysql数据库进行分页显示 * 这里连接的数据库是MYSQL * 表的情况是test数据库中的test表,建表用语句create table test(id int,name char(50)

冯立彬的博客 9759

SpringBoot整合JSP+MyBatis+分页插件实战

graph TDA[启用日志输出] --> B[配置日志框架]B --> C[查看SQL执行效率]C --> D[启用缓存机制]D --> E[优化执行器配置]E --> F[性能提升,系统稳定]通过本章内容的学习,读者可以掌握Spring Boot整合MyBatis的核心配置流程、Mapper接口与XML映射文件的绑定机制、以及日志与性能优化的关键配置技巧。这些内容为后续构建高性能、可维护的持久层奠定了坚实基础。在实际开发中,数据库表字段与 Java 对象属性往往不一致,此时需要使用。

weixin_27645199的博客 409

java mysql jsp分页代码_JAVA/JSP学习系列之八(改写MySQL翻页例子)

JAVA/JSP学习系列之八(改写MySQL翻页例子)更新时间:2006年10月13日 00:00:00 作者:一、前言其实,改写后的JDBC Data-Source是运行在Servlet中的,通过JNDI去查找数据源。我用Orion试的,将本站《JAVA/JSP学习系列之六(MySQL翻页例子) 》 简单改写了一下。二、配置(1)JDBC需要将用到的JDBC驱动Copy到[ORION]/li...

weixin_31105189的博客 203

JAVA+JSP+MYSQL分页

JAVA调用 MYSQL存储过程 JSP实现分页

使用jsp+servlet+mysql+tomcat的java web,很简单,只是一个流程,供大家参考

使用jsp+servlet+mysql+tomcat的java web,很简单,只是一个流程,供大家参考

Java Web 普通分页显示代码

下一页</a>--%>page=<%=shang%>">上一页</a>page=<%=xia%>">下一页分页显示学生列表姓名</th><th>年龄

m0_65037354的博客 1093

基于OpenAI Agents构建多智能体工作流:从原理到实战

多智能体系统(Multi-Agent System)是人工智能领域的重要分支,它通过多个智能体(Agent)的协作与交互,解决单一智能体难以处理的复杂任务。其核心原理在于将任务分解、分配与协调,每个智能体具备特定能力,通过通信机制实现信息共享与决策协同。在工程实践中,多智能体框架的价值在于提升任务处理效率、增强系统鲁棒性,并支持模块化开发。典型的应用场景包括自动化工作流编排、复杂问题求解以及人机协同交互。本文以OpenAI Agents SDK为例,深入探讨如何利用其提供的智能体(Agent)、会话(Ses

weixin_28725959的博客 603

Jsp技术入门指南【十三】基于 JSTL SQL 标签库实现 MySQL 数据库连接与数据分页展示

本文介绍了如何通过JSTL SQL标签库实现MySQL数据库连接与数据分页展示。首先,回顾了JSTL SQL标签的基本概念及其优势,强调了其在简化JSP页面开发中的作用。接着,详细讲解了如何使用<sql:setDataSource>标签配置数据库连接,并提供了MySQL的示例代码。文章还通过实例演示了如何将数据库中的数据渲染到前端页面,包括驱动包的引入、Maven环境的配置以及Web库的创建与导入。通过本文,读者可以掌握从数据库到前端页面的完整数据流转技术方案。

2402_83322742的博客 2287

Coze+剪映小助手实战:5分钟搞定视频草稿创建工作流(附常见错误排查)

本文详细介绍了如何利用Coze平台与剪映小助手,通过create_draft接口快速搭建自动化视频草稿创建工作流。文章从核心价值、零基础搭建步骤、运行验证到深度错误排查,手把手教你5分钟内实现视频项目参数预设的标准化与自动化,显著提升短视频创作与团队协作效率。

oil88的博客 549

AI智算-K8s+vLLM & Ray:DeepSeek-r1 671B 满血版分布式推理部署实践

自从上次发布 【AI-智算】K8s+SGLang实战:DeepSeek-r1:671b满血版多机多卡私有化部署全攻略] 文章后,本次将演示另一个主流推理引擎工具——vLLM,结合K8s、LWS、Ray、Volcano等技术栈,部署DeepSeek-r1 671b 满血版分布式推理集群,并对比其与SGLang推理引擎的性能表现。

Kason_iWiki 1824

java-使用Servlet+JSP+Mysql+JDBC制作简易的商品管理系统

目录 一、前言 二、环境搭建 三、前端页面   1. index.jsp 登陆首页   2. shopping.jsp 商品管理页面   3. addGoods.jsp 添加商品页面   4. updateGoods.jsp 修改商品信息页面 四、后端   1. 登录用户检验   2. 商品管理处理     2.1 GoodsServlet 代码     2.2 BasicDao 代码     2.3 GoodsDao 代码     2.4 GoodsService 代码     2.5 JdbcUtil

喃灬疯的博客 4331

上位机图像处理和嵌入式模块部署(开篇)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 图像处理是现实生活当中很实用的一门技术。工业上一般采用的是机器视觉,以传统算法和光源控制为主,部分采用了深度学习技术。而生活当中,则主要以二维码识别、人脸识别、车牌识别和ocr识别为主,这中间深度学习与AI扮演了很重要的角色。过去,市场上的商业收费软件,主要还是以传统设备厂商提供的上位机软件为主,那这一部分是不是结合最新的npu技术,应该做出一些新的东西出来呢?

嵌入式-老费,一个分享专业嵌入式知识的blog 1334

JSP直连Access数据库的代码 不需要ODBC数据源

很多网友在学习JSP编程时都遇到了这样一些问题:如何经济的搭建一个JSP网站网站采用什么数据库,采用MySQL,不熟悉,想用SQL server--服务提供商的空间又不支持或者价格太高,自己搭个服务器--更不实际,采用access,连接数据库又是问题,服务商不提供JDBC-ODBC......总之,就是由于数据库大大限制了JSP的实用,难道JSP就成了阳春白雪,不是 在这里我以我的JSP虚拟主

首席技术执行官CTO(Chief Technology Officer)|技术总监--邓斌博客 1847

Java接入DeepSeek大模型:从零实现流式对话+多轮会话管理(完整项目实战)

emitter.completeWithError(new RuntimeException("连接DeepSeek服务超时"));private static final Set<String> BLACK_WORDS = Set.of("暴力", "色情", "政治敏感");emitter.onCompletion(() -> log.info("SSE连接完成"));emitter.onTimeout(() -> log.warn("SSE连接超时"));// 每个路由基础连接数。

wjianwei666的专栏 927

OSCP-Algernon(SmarterMail)

从前面的结果中,确实有.NET远程处理在端口17001上运行。因此,此漏洞应适用于目标计算机。下载了漏洞并编辑了以下部分以匹配我的IP并使用本地端口21。端口9998引导到一个SmarterMail的登录页面。设置监听,获得一个反弹shell。端口80重定向到默认IIS页。已经是system权限了。google搜索漏洞。

墨痕诉清风的博客 488

JSP+Mysql ——基于Tomcat的简单学生成绩查询web系统

目录一、JSP和web系统简介二、代码来源三、环境配置四、项目更改五、MySQL简单运用六、系统展示 一、JSP和web系统简介 二、代码来源 三、环境配置 四、项目更改 五、MySQL简单运用 六、系统展示 参考文章: lcmd命令问题. 项目配置问题. ...

weixin_47936384的博客 2815

NVIDIA Omniverse 技术浅析(二):USD

例如,一个用户可以负责场景的几何体设计,另一个用户可以负责材质和灯光的调整。USD 的开放性和可扩展性,结合 Omniverse 的 Kit 扩展框架,使得用户和开发者可以创建自定义的应用程序和工具,以满足特定的需求。USD 的材质和物理属性系统,结合 Omniverse 的 RTX 实时渲染技术,使得用户可以在虚拟环境中看到逼真的光影效果和物理模拟。USD 的时间轴和动画功能,结合 Omniverse 的物理属性系统,使得用户可以为虚拟环境中的元素创建复杂的动画和物理模拟。

m0_75253143的博客 444

jsp页面导入mysql驱动包_jsp页面中怎么导入jdbc连接mysql

展开全部在项目lib中加入mysql的jar包,然后写jdbc链接信息即可,如下提供多种链接方式32313133353236313431303231363533e58685e5aeb931333361316132希望对你有帮助JDBC连接MySQL加载及注册JDBC驱动程序Class.forName("com.mysql.jdbc.Driver");Class.forName("com.mysql...

weixin_29531757的博客 1256

040、全志V853低功耗AI视觉平台的ISP调优——电池供电场景下的画质与功耗平衡

本文分享了全志V853 AI视觉平台在电池供电场景下的ISP调优经验。作者通过实际项目踩坑案例,揭示了V853 ISP的特殊性:不同于主流平台,其ISP与CPU共享时钟域,降噪能力有限,需特别注意功耗控制。关键优化策略包括:关闭无效ISP模块、优化Sensor联动时钟、采用场景自适应配置、开发快速启动模式等。特别指出V853个体差异大,量产需考虑高低温影响。文章强调V853的ISP功耗优化需从寄存器级别精打细算,不能简单套用其他平台经验,建议选型时单独评估ISP功耗,避免续航缩水。

zzfmlxs的博客 25

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

jsp创建mysql数据库_使用 MySQL 数据库创建简单的 JSP 应用程序(1)

使用 MySQL 数据库创建简单的 Web 应用程序编写人:Troy Giunipero本文档描述了如何创建用于连接 MySQL 数据库服务器的简单 Web 应用程序。还讲述了 Web 开发中的一些基本概念和技术,例如JavaServer Pages(JSP)、JavaServer Pages 标准标记库(JavaServer Pages Standard Tag Library, JSTL...

weixin_39900023的博客 1130

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

java创建数据源_java 用程序创建数据源怎么做

展开全部jdbc数据库连接:1.加载驱动Class.forName(“xxxDriver”)2建立连接:Connection conn= DriverManager.getConnection(url,user,password);(url是连接地址ip端口号和数据库实例名,62616964757a686964616fe58685e5aeb931333330326133user用户名,passwo...

weixin_39603778的博客 674

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

通用分页-前台

要自定义一个具有分页功能的分页标签,你可以按照以下思路进行:1. 定义标签属性:确定需要的标签属性,比如数据列表、每页显示的记录数、当前页数等,可以定义对应的 JavaBean 即标签类。2. 实现分页逻辑:在标签类中实现分页逻辑,包括计算总页数、根据当前页获取对应数据,处理页码的合法性验证等。3. 生成分页导航:在标签类中使用字符串拼接或模板引擎生成分页导航的 HTML 代码,可以使用链接、按钮或其他方式进行展现。

SAME_LOVE的博客 666

基于SSM的JSP+MYSQL在线教学管理系统ssh三层

"基于JSP的教学在线留言答疑系统-java教学在线留言答疑系统mysql数据源 项目描述:学生在课后,可以通过该网站提出问题留言,教师登录后可以选择回答。系统分为管理员、学生、教师。学生针对课程进行提问留言,查看系统所有的留言。教师对自己所授课程留言进行回答管理学生权限。管理员负责对系统进行管理。 技术描述:使用MVC模式进行设计项目架构,使用JavaEE核心技术Servlet+Jsp+Fi...

QQ_346127357的博客 1211

JSP 分页显示数据

最近在做一个小程序,用到了JSP的分页。虽然只是最简单的分页,但是还是花了我不少时间。这看似简单的功能,实现起来还是稍微有点麻烦。实现分页功能,需要知道数据的总个数,每页应该有多少条数据,以及当前页码。假如总共有300条数据,每页20条,那么应该就有15页;假设有301条数据,每页20条,这时候就需要16页。因此,总页数可以这样计算:总页数=数据总数%每页条数==0?数据总数/每页条数:数据总数/...

小松的博客 321
上一篇: 用servlet动态生成图片
下一篇: Hibernate常见的20个问题
hjpengjava
博客等级 码龄18年 5粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值