- 博客(38)
- 收藏
- 关注
原创 java面试之SQL优化、运行时异常
以下是一些SQL优化技巧:索引优化:对于查询频繁的列建立索引,可以大幅度提高查询效率。但同时也要避免过多的索引或者不必要的复合索引,因为它们会增加写操作的开销。查询条件优化:避免使用%LIKE%等模糊匹配操作符,这种操作将导致全表扫描,降低查询效率。尽可能使用等值匹配操作符=和区间匹配操作符BETWEEN、IN。优化超时语句:缓存重复查询结果、取消不必要冗余查询,尽量减少子查询次数、合理使用临时表、合理利用分区特性等方式优化SQL语句的执行效率。
2023-06-12 16:45:50
1224
原创 Java面试题之在ssm项目中如何同时连接两个数据库
在 SSM 项目中,可以通过配置多个数据源来连接多个数据库。下面以 Spring Boot 为例,介绍如何同时连接两个数据库。然后在 Spring Boot 应用程序中,我们可以定义多个 DataSource Bean,并指定对应的数据源信息。Spring Boot 中内置了多个 DataSource 类型,如 HikariDataSource、TomcatDataSource、DBCP2DataSource 等。
2023-06-12 16:25:09
2001
原创 Java反射之Constructor、getDeclaredConstructor与newInstance
getDeclaredConstructor 是 Java 反射 API 提供的一个方法,用于获取指定类中声明的构造方法。与 getConstructor 不同的是,getDeclaredConstructor 可以获取到所有访问级别(public、protected、default、private)的构造方法,而 getConstructor 仅能获取到 public 访问级别的构造方法。该方法有一个参数,即参数列表类型。可以利用该参数获取到特定参数类型的构造方法。
2023-06-12 16:12:53
1918
原创 做个spring-实现Bean对象的的定义、注册、和获取
实现BeanFactory 继承DefaultSingletonBeanRegistry抽象的 Bean 工厂基类,定义模板方法实现方法getBean 实现BeanFactory的方法自己的抽象方法继承AbstractBeanFactory实现默认bean创建的抽象bean工厂超类重写的方法Bean对象的定义BeanDefinition定义 Bean 实例信息} }基于工厂模式,我们先创建出BeanFactory接口,getBean()方法用于获取实例化Bean/**
2023-06-09 17:36:07
827
原创 Redis学习--下载与安装
Windows版下载地址:https://github.com/microsoftarchive/redis/releasesLinux版下载地址:https:/download.redis.io/releases。
2023-05-16 09:34:09
344
原创 linux-项目部署软件安装
1、使用FinalShell自带的上传工具将jdk的二进制发布包上传到Linux jdk-8u171-linux-x64.tar.gz。2、解压安装包,命令为tar -zxvf apache-tomcat-7.0.57.tar.gz -C /usr/local。2、解压安装包,命令为tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local。●ps命令是liux下非常强大的进程查看命令,通过ps -ef可以查看当前运行的所有进程的详细信息。
2023-05-15 18:12:35
359
原创 Linux常用命令—拷贝移动打包查找
说明:-r:如果复制的是目录需要使用此选项,此时将复制该目录下所有的子目录和文件将hello.txt复制到itcast目录中将hello.txt复制到当前目录,并改名为hi.txt将itcast目录和目录下所有文件复制到itheima目录下将itcast目录下所有文件复制到itheima目录下。
2023-05-15 16:32:03
589
原创 Linux常用命令-文件目录
显示所有文件及目录(.开头的隐藏文件也会列出)除文件名称外,同时将文件型态(d表示目录,-表示文件)、权限、拥有者、文件大小等信息详细列出注意:由于我们使用ls命令时经常需要加入-l选项,所以Linux为ls -l命令提供了一种简写方式,即。
2023-05-15 16:12:26
329
原创 Liux命令初体验-几个常用命令
使用cleart命令或者Ctrl+l快捷键实现清屏。在执行Liux命令时,提示信息如果显示为乱码。使用上下箭头快速调出曾经使用过的命令。连续两次Tab键,给出操作提示。
2023-05-15 15:44:16
269
原创 redis之下拉框信息
准备导入mysql数据库连接池有关的包导入redis数据库连接池有关的包核心对象:JedisPool导入json解析器有关的包核心对象:ObjectMapper1准备数据库连接的两个配置文件,放到src目录下mysql使用redis使用准备工具类mysql使用JDBCUtilspackage cn.com.utils;import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataS
2020-08-06 16:50:48
361
原创 带有验证码的登陆页面
user用户类package cn.com.domain;public class User { private int id; private String username; private String password; private String yanzhengma; public int getId() { return id; } public void setId(int id) { thi
2020-07-27 17:54:25
1343
原创 cookie记录上次访问时间
package cn.com.cookie;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.Http
2020-07-26 15:46:40
220
原创 servlet之文件下载
html链接<a href="/day13/servletDowload?filename=图片一.jpg">图片1下载</a>用到的解决中文名问题的工具类package cn.com.utils;import java.io.UnsupportedEncodingException;import java.net.URLEncoder;import java.util.Base64;public class DownUtil { public sta
2020-07-26 11:21:26
113
原创 response之验证码
创图片对象new BufferedImage(宽,高,类型)美化图片填充背景色Graphics g = image.getFraphics()//画笔对象g.setcolor(Color.颜色)//设置颜色g.fillRect(起点坐标,终点坐标)//填充画边框g.setcolor//颜色g.drawRect(起点坐标,终点坐标-1)写验证码str = “abcd············”生成随机角标new Random()ran.nextInt(str.length)获取字符
2020-07-25 15:52:24
214
原创 respond重定向和输出流
package cn.com.respond;import javax.servlet.ServletException;import javax.servlet.ServletOutputStream;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.
2020-07-25 12:13:51
163
原创 request登陆案例
创项目,导包html登录页面<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>登录</title></head><body><form action="/day12/servlet" method="post"> <input type="text" name="usern
2020-07-24 18:53:28
294
原创 request请求转发和共享数据
请求转发 req.getRequestDispatcher("/demo7").forward(req,resp);共享数据 req.setAttribute("msg","我接收了共享的数据");接收共享数据 Object msg = req.getAttribute("msg");package Demo01;import javax.servlet.ServletException;import javax.servlet.annotation.WebServle
2020-07-23 17:57:28
261
原创 request获取请求参数(通用方法)
//解决post中文乱码req.setCharacterEncoding(“utf-8”);//根据参数名称获值String username = req.getParameter(“username”);//根据参数名称获多值数组String[] selects = req.getParameterValues(“select”);//获取所有请求参数的名称Enumeration parameterNames = req.getParameterNames();//获取所有参数map集合
2020-07-23 17:23:09
1813
原创 request获取请求体数据
package Demo01;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.BufferedR
2020-07-23 17:10:11
843
原创 request获取请求头数据
package Demo01;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOExcepti
2020-07-23 15:24:01
164
原创 request获取请求行数据
package Demo01;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOExcepti
2020-07-23 12:25:53
110
原创 Servlet快速入门
Servlet:运行在服务器端的小程序,是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则。快速入门创建Java EE项目定义一个类实现servlet接口public class SeverDemo01 implements Servlet实现接口的抽象方法配置servlet在web.xml中配置<servlet> <servlet-name>demo1</servlet-name> <servlet-cl
2020-07-23 10:51:40
70
原创 spring—JDBC(二)
练习修改一号数据score为100添加一条记录删除刚添加的记录查询id为1的记录,封装为Map集合查询所有记录封装为list集合查询所有记录,封装为mysqlpacket对象的list集合查询总记录数package spring_jdbc;import demo01class.Mysqlpacket;import org.junit.Test;import org.springframework.jdbc.core.BeanPropertyRowMapper;import org.
2020-07-22 13:43:29
91
原创 spring—JDBC(一)
Spring JDBCspring框架对JDBC的简单封装,提供jdbctemplate对象,简化jdbc开发步骤导入jar包commons-logging-1.2.jarspring-beans-5.0.0.RELEASE.jarspring-core-5.0.0.RELEASE.jarspring-jdbc-5.0.0.RELEASE.jarspring-tx-5.0.0.RELEASE.jar创建JDBCtemplate对象,依赖于数据源DataSourceJdbcTemplat
2020-07-22 11:34:54
127
原创 数据库连接池的使用(四)——druid
使用工具类工具类package utils;import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataSource;import java.io.IOException;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import
2020-07-21 19:09:26
107
原创 数据库连接池的使用(三)——druid
步骤导入jai包 druid-1.0.9.jar定义配置文件druid.properties可为任意名,可放任意目录加载配置文件获取数据库连接池对象DruidDataSourceFactory获取连接package sqlpool;import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataSource;import java.io.IOException;import java.i
2020-07-21 18:23:34
100
原创 数据库连接池的使用(二)——c3p0
close归还连接对象package sqlpool;import com.mchange.v2.c3p0.ComboPooledDataSource;import java.sql.Connection;import java.sql.SQLException;public class C3p0_1 { public static void main(String[] args) { //创建核心对象,,数据库连接池对象,不传参则使用默认的配置读取连接池对象
2020-07-21 17:40:12
107
1
原创 数据库连接池的使用(一)——c3p0
步骤导入jar包:c3p0-0.9.5.2.jarmchange-commons-java-0.2.12.jar驱动jar包定义配置文件c3p0.properties c3p0-config.xml路径直接放src下创建核心对象:数据库连接对象new combopooledDataSource获取链接getConnectionpackage sqlpool;import com.mchange.v2.c3p0.ComboPooledDataSource;
2020-07-21 17:01:10
109
原创 写一函数,将两个字符串连接
写一函数,将两个字符串连接#include <iostream>#include <cstring>using namespace std;void lianjie(string a, string q){ string c = a + q; cout << c << endl;}int main(){ string p,q; cin >> p >> q; lianjie(p,
2020-07-07 11:20:48
574
原创 写一函数,使输入的一个字符串按反序存放,在主函数中输入输出反序后的字符串。
写一函数,使输入的一个字符串按反序存放,在主函数中输入输出反序后的字符串。#include <iostream>#include <cstring>using namespace std;void fanxu(string a){ for(int i = (a.size() - 1); i >= 0; i--) { cout << a[i]; }}int main(){ string p; c
2020-07-07 10:40:46
668
原创 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换。
题目描述写一个函数,使给定的一个二维数组(3×3)转置,即行列互换。输入一个3x3的矩阵输出转置后的矩阵#include <iostream>using namespace std;int main(){ int a[3][3]; for(int i = 0; i < 3; i++) { for(int j = 0; j < 3; j++) { cin >> a[i][j]
2020-07-06 17:34:57
3688
1
原创 写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息
小白在坚持刷题······题目描述写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息。输入一个数输出如果是素数输出prime 如果不是输出not prime#include <iostream>using namespace std;bool isprime(int n){ if(n > 0 && n < 4){return true;} for(int i = 4; i < n; i++) {
2020-07-06 17:04:37
2999
2
原创 求方程 的根,用三个函数分别求当b^2-4ac大于0、等于0、和小于0时的根,并输出结果。从主函数输入a、b、c的值
小白程序员刷题努力中C语言程序设计教程(第三版)课后习题8.2求方程 的根,用三个函数分别求当b^2-4ac大于0、等于0、和小于0时的根,并输出结果。从主函数输入a、b、c的值。#include <iostream>#include <iomanip>#include <cmath>using namespace std;void dayu(double a,double b,double c){ double m = sqrt(b*b - 4*
2020-07-06 11:41:50
3653
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人