首页 > 其他分享 >准备工作(1)

准备工作(1)

时间:2024-05-08 16:12:02浏览次数:21  
标签:rs param 工作 connection params 准备 static pstm

  1. 准备工作

    • 新建maven web项目
    • 测试Tomcat
  2. 导入相关依赖:

  3. 数据库准备

supermarket:smbms_address,smbms_bill,smbms_provider,smbms_role,smbms_user

  1. 构建相应的实体类

  2. 编写配置文件

    db.properties

  3. 编写数据库的公共类
    参考:https://blog.csdn.net/qq_42647047/article/details/116503457

      package com.test.dao;
    
      import java.io.IOException;
      import java.io.InputStream;
      import java.sql.*;
      import java.util.Properties;
    
      /**
       * 操作数据库的基类--静态类
       * @author Administrator
       *
       */
      public class BaseDao {
      	
      	static{//静态代码块,在类加载的时候执行
      		init();
      	}
      	
      	private static String driver;
      	private static String url;
      	private static String user;
      	private static String password;
      	
      	//初始化连接参数,从配置文件里获得
      	public static void init(){
      		Properties params=new Properties();
      		InputStream is=BaseDao.class.getClassLoader().getResourceAsStream("db.properties");
      		try {
      			params.load(is);
      		} catch (IOException e) {
      			e.printStackTrace();
      		}
      		driver=params.getProperty("driver");
      		url=params.getProperty("url");
      		user=params.getProperty("user");
      		password=params.getProperty("password");
    
      	}   
      		
      	/**
      	 * 获取数据库连接
      	 * @return
      	 */
      	public static Connection getConnection(){
      		Connection connection = null;
      		try {
      			Class.forName(driver);
      			connection = DriverManager.getConnection(url, user, password);
      		} catch (Exception e) {
      			e.printStackTrace();
      		}
      		
      		return connection;
      	}
      	/**
      	 * 查询操作
      	 * @param connection
      	 * @param pstm
      	 * @param rs
      	 * @param sql
      	 * @param params
      	 * @return
      	 */
      	public static ResultSet execute(Connection connection,PreparedStatement pstm,ResultSet rs, String sql,Object[] params) throws Exception{
      		pstm = connection.prepareStatement(sql);
      		//向sql中的占位符加载参数Object[] params
      		for(int i = 0; i < params.length; i++){
      			pstm.setObject(i+1, params[i]);
      		}
      		rs = pstm.executeQuery();
      		return rs;
      	}
      	/**
      	 * 更新操作
      	 * @param connection
      	 * @param pstm
      	 * @param sql
      	 * @param params
      	 * @return
      	 * @throws Exception
      	 */
      	public static int execute(Connection connection,PreparedStatement pstm, String sql,Object[] params) throws Exception{
      		int updateRows = 0;
      		pstm = connection.prepareStatement(sql);
      		for(int i = 0; i < params.length; i++){
      			pstm.setObject(i+1, params[i]);
      		}
      		updateRows = pstm.executeUpdate();
      		return updateRows;
      	}
      	
      	/**
      	 * 释放资源
      	 * @param connection
      	 * @param pstm
      	 * @param rs
      	 * @return
      	 */
      	public static boolean closeResource(Connection connection,PreparedStatement pstm,ResultSet rs){
      		boolean flag = true;
      		if(rs != null){
      			try {
      				rs.close();
      				rs = null; //如果rs.close()没关上,让其等于null,使垃圾回收器自动回收。
      			} catch (SQLException e) {
      				e.printStackTrace();
      				flag = false;
      			}
      		}
      		if(pstm != null){
      			try {
      				pstm.close();
      				pstm = null;//GC回收
      			} catch (SQLException e) {
      				// TODO Auto-generated catch block
      				e.printStackTrace();
      				flag = false;
      			}
      		}
      		if(connection != null){
      			try {
      				connection.close();
      				connection = null;//GC回收
      			} catch (SQLException e) {
      				// TODO Auto-generated catch block
      				e.printStackTrace();
      				flag = false;
      			}
      		}
      		
      		return flag;
      	}
    
      }
    
    
  4. 设置字符编码过滤器:在filter建一个类实现Filter接口,重写方法,将请求相应设置为utf-8编码,并在web.xml中配置字符编码过滤器

  5. 导入静态资源css,js等资源,放在webapp文件夹下

标签:rs,param,工作,connection,params,准备,static,pstm
From: https://www.cnblogs.com/hytip/p/18180091

相关文章

  • 远程工作的数据安全挑战和解决策略
    随着远程工作的普及,数据安全面临了前所未有的挑战。企业在应对这些挑战时,必须采取切实有效的策略来保护敏感信息。以下是远程工作数据安全的主要挑战和相应的解决策略:数据安全挑战设备丢失或被盗:员工在外工作时,笔记本电脑和移动设备更易丢失或被盗,这可能导致存储在设备上的数......
  • Laravel Schedule 中的 dailyAt 是如何工作的
    LaravelSchedule中的dailyAt是如何工作的业务逻辑中通过dailyAt​指定了一个每天都需要执行的定时任务:$schedule->call(function(){//业务逻辑})->dailyAt('14:29');‍​Illuminate\Console\Scheduling\ManagesFrequencies​中的dailyAt​方法,最终是生成......
  • R:microtable数据准备
    rm(list=ls())setwd("C:\\Users\\Administrator\\Desktop\\microtable")#设置工作目录library(microeco)library(magrittr)feature_table<-read.table('feature_table_g.txt',header=TRUE,row.names=1,sep="\t")#特征表......
  • (VKL系列)超低功耗LCD液晶显示驱动IC-VKL76 SSOP28,19*4 76点阵,超低工作电流约7.5微安,
    VKL076概述:VKL076是一个点阵式存储映射的LCD驱动器,可支持最大76点(19SEGx4COM)的LCD屏。单片机可通过I2C接口配置显示参数和读写显示数据,可配置4种功耗模式,也可通过关显示和关振荡器进入省电模式。其高抗干扰,低功耗的特性适用于水电气表以及工控仪表类产品。功能特点:•  工......
  • [网鼎杯 2020 白虎组]PicDown linux文件工作原理
    今天遇到个毫无头绪的题,记录一下过程。进入页面发现输入框,参数为url,那就试试文件读取。看看环境变量。其中PWD=/app,有可能存在app.py,试试吧。猜对了,运气吧~(做完后才发现的T-T)这里看其他wp说是在linux读取当前进程执行命令/proc/self/cmdline发现了看看app.py吧。点......
  • 高效驾驶证识别:API接口提升工作效率
     在日常生活和工作中,我们经常会遇到需要处理大量驾驶证信息的情况。例如,交通管理部门需要对驾驶证进行审核和管理,保险公司需要核实驾驶证信息等等。传统的处理方式需要人工逐一提取和录入信息,耗时且容易出错。而现在,借助高效的驾驶证识别API接口,我们可以大大提升工作效率。驾......
  • chinesecalendar:判断日期是不是工作日
    工作与学习中,有个场景需要判断指定日期是不是工作日,例如自动化办公工作日自动发邮件,量化交易判断是否为交易日等等,因此我们需要能准确判断给的日期是不是工作日,Python中一般使用模块chinesecalendar来解决这个问题。网友自己维护fromdatetimeimportdatetime#休:正常工作日......
  • c语言编译系统工作原理
    c语言编译系统内部的工作原理程序生命周期概述一个程序的生命周期可以被分成四个部分:创建编译运行退出以一个简单的helloworld.c程序为例:#include<stdio.h>intmain(){ printf("helloworld!");return0;}编译的详细过程通过这条命令gcc-ohelloworldh......
  • 工作感受月记(202405月)
    2024年05月06号新的一月工作天,旧事未清理,新事不停生。今日工作事项:1/来了一个新案例,apimstv1升级到stv2的情况,客户需要noam同学来帮助建会议处理问题。2/自己研究durablefunction的4001端口问题,证明确实是gRPC需要使用,用于isolatedprocess处理时候,进程间通信所用。如果......
  • 问题管理员的工作角色、职责和技能
    问题管理就是识别、分析和解决反复出现的根本原因问题并永久修复它们。听起来很简单对吧,不幸的是,情况并非总是如此。对于组织来说,IT问题管理一直是一门棘手的ITSM学科。一个经常被忽视的关键因素是有效的问题管理不仅仅是工具和流程。它需要熟练的人来带路 问题管理员通过监......