首页
关于
留言
统计
友链
壁纸
影视
留言找电影
Search
1
java jdk17版本使用cglib报错问题解决
321 阅读
2
在Java中修复json数据,json格式不正确,如何在Java中修复不正确的json
118 阅读
3
Java实现双链表插入排序~渡星河全网首发
107 阅读
4
Java打印某年某月的日历~不调用函数
76 阅读
5
npm nvm 淘宝镜像最新可用
71 阅读
代码笔记
Java
css
Javascript
数据库
安卓开发
Java 功能实例
Java 封装
我的日常
影音分享
文案
恋爱问答
资源分享
电脑游戏
实用APP
登录
/
注册
Search
标签搜索
java
java作业
恋爱
动漫
3A大作
独行月球
电影分享
总之就是非常可爱
JavaScript
office
破解
mysql
vue
java打包
跨域
tomcat解决乱码
bug解决
tomcat
vscode
渡星河
累计撰写
94
篇文章
累计收到
30
条评论
首页
栏目
代码笔记
Java
css
Javascript
数据库
安卓开发
Java 功能实例
Java 封装
我的日常
影音分享
文案
恋爱问答
资源分享
电脑游戏
实用APP
页面
关于
留言
统计
友链
壁纸
影视
留言找电影
搜索到
93
篇与
的结果
2023-03-14
java 中cron表达式怎么用
Cron表达式是一种用于指定定时任务执行时间的格式,通常用于Java中的定时任务框架,如Quartz和Spring的@Scheduled注解。Cron表达式由6个字段组成,分别表示秒、分、时、日、月、周几,每个字段可以使用通配符、数字、范围、列表和特殊字符等进行指定。下面是一个Cron表达式的示例:0 0 12 * * ?这个表达式表示每天中午12点执行任务。下面是Cron表达式中各个字段的含义:秒(0-59)分钟(0-59)小时(0-23)日(1-31)月(1-12或JAN-DEC)周几(1-7或SUN-SAT)在Java中,可以使用Quartz或Spring的@Scheduled注解来指定定时任务的执行时间。下面是一个使用@Scheduled注解的示例:import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @Component public class MyTask { @Scheduled(cron = "0 0 12 * * ?") public void run() { // 执行任务 } } *1.cron="\* * \* * \* ?": 表示每一年中的每秒执行一次* *2.cron="\* * \* 1 \* ?":* *表示每一年每月的1号的每一秒都执行一次任务* *3.cron="0 0 0 1 \* ?":表示每一年的每月的一号的**0时0分0秒执行任务* *4.cron="0 0 3 \* * ?":表示每一年的每月每日凌晨**3点0分0秒执行任务* *5.cron="0 0 3 1 \* ?":表示每一年的每月一号凌晨**3点0分0秒执行任务 这个示例中,使用@Scheduled注解指定了定时任务的执行时间为每天中午12点。
2023年03月14日
6 阅读
0 评论
1 点赞
2023-03-13
SSM搭建模板,包含web.xml和pom.xml
重复的东西就没有必要写多遍了web.xml<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <!-- 注册springmvc--> <servlet> <servlet-name>myweb</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:dispatcherServlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>myweb</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> <!--注册spring监听器--> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- 注册字符去过滤器--> <filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>utf-8</param-value> </init-param> <init-param> <param-name>forceRequestEncoding</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>forceResponseEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>characterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app> pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>SSM-Work</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>SSM-Work Maven Webapp</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <encoding>UTF-8</encoding> <java.version>11</java.version> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency> <!-- https://mvnrepository.com/artifact/javax.servlet.jsp/jsp-api --> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.2</version> <scope>provided</scope> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.22.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>5.2.22.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.2.22.RELEASE</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.14.2</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.14.2</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.7</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.8</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.30</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.2.10</version> </dependency> </dependencies> <build> <finalName>SSM-Work</finalName> </build> </project> springmvc配置文件,这里文件名为dispatcherServlet<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd"> <!--springMvc配置文件--> <context:component-scan base-package="com.ssm.controller"/> <!-- 配置视图解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp"/> <property name="suffix" value=".jsp"/> </bean> <!-- 注解驱动--> <!-- 响应ajax请求返回json--> <mvc:annotation-driven/> </beans> spring配置文件<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd"> <!--spring配置文件--> <!-- 申明数据源链接数据库--> <context:property-placeholder location="classpath:conf/jdbc.properties"/> <!-- 声明数据源--> <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </bean> <!-- 创建mybatis的SqlsessionFactory--> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="configLocation" value="class:conf/mybatis.xml"/> </bean> <!-- 声明mybatis扫描器创建dao对象--> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/> <property name="basePackage" value="com.ssm.dao"/> </bean> <!-- 声明service的注解@service所在包名的位置--> <context:component-scan base-package="com.ssm.service"/> <!-- 事务的配置注解配置,aspectj后面用到加--> </beans> mybatis.xml文件配置 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <!-- 输出日志--> <!--<settings> <setting name="logImpl" value="STDOUT_LOGGING"/> </settings>--> <typeAliases> <!-- 实体类的包名,用于设置别名--> <package name="com.ssm.util"/> </typeAliases> <mappers> <!-- 一次加载所有的mapper.xml,文件名称和dao接口必须完全一样,使用name必须同一目录--> <package name="com.ssm.dao"/> </mappers> </configuration> {dotted startColor="#ff6c6c" endColor="#1989fa"/}{mtitle title="配置遇到的问题"/}如果遇到DAO层的mapper.xml无法被加载,可以使用在resources目录下新建一个mapper目录,一个xml对应一个类。需要修改applicationContext.xml<!-- 创建mybatis的SqlsessionFactory--> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="configLocation" value="classpath:mybatis.xml"/> <property name="mapperLocations" value="classpath:mapper/**/*.xml"/> </bean>多添加了一行扫描mapper目录下的所有xml还有一种方法在mybatis.xml配置文件中,不使用<mappers> <!– 一次加载所有的mapper.xml,文件名称和dao接口必须完全一样,使用name必须同一目录–> <package name="com.ssm.dao.UserDao"/> </mappers>先说一下,我们无法加载dao层下的所有xml就是这行代码没生效我们可以在这个配置文件中使用这种形式来指定 <mapper resource="com.ssm.dao.UserDao"/> </mappers> mapper.xml模板例子<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ssm.dao.UserDao"> <!-- 在mybatis.xml文件中配置了别名所有可以不使用全限定--> <select id="selectUsers" resultType="User"> select id,name,age,password,power from users order by id desc </select> <insert id="insertUser"> insert into users(name,age,password,power) values(#{name},#{age},#{password},#{power}) </insert> <select id="login" resultType="User"> select name,password,power from users where name = #{name} </select> </mapper>
2023年03月13日
5 阅读
0 评论
1 点赞
2023-03-10
Spring中使用@Transactional注解,Bean对象注入发生类型转变异常解决方法
方法一在使用Spring中使用@Transactional注解的时候,Spring会使用AOP代理来织入事务处理逻辑。因为代理对象是动态生成的,所以在注入Bean时,实际上注入的是代理对象,而不是原始对象。代理对象的类名通常是以$Proxy开头的,后面跟着一个数字,表示这是代理对象的序号。这个序号是根据代理对象的生成顺序生成的,所以不同的代理对象会有不同的序号。因此,当你在使用@Transactional注解时,如果你注入的是一个类,那么实际上注入的是代理类。如果你想获取原始对象,可以使用Spring提供的AopUtils.getTargetClass()方法获取代理对象的原始类,例如:Object target = AopUtils.getTargetClass(bean); 其中,bean是代理对象,target是原始对象。方法二你可以使用try-with-resources语句块来自动关闭Spring的应用上下文对象,以确保资源能够得到正确的释放。同时,也可以使用更加类型安全的getBean()方法来获取原始类型的Bean实例,避免了类型转换带来的不便。下面是修改后的代码示例:try (ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("balance.xml")) { AccountService accountService = context.getBean(AccountService.class); accountService.transfer("2", "1", 400.0); } 在这个代码中,我们使用try-with-resources语句块创建Spring的应用上下文对象,并且使用getBean()方法来获取原始类型的AccountService实例。这样就避免了类型转换带来的不便。最后,在完成操作之后,try-with-resources语句块会自动关闭应用上下文对象。
2023年03月10日
18 阅读
0 评论
1 点赞
2023-03-09
java jdk17版本使用cglib报错问题解决
我们先看报错Exception in thread "main" java.lang.ExceptionInInitializerError at com.spring6.cglib.Client.main(Client.java:7) Caused by: net.sf.cglib.core.CodeGenerationException: java.lang.reflect.InaccessibleObjectException-->Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @66cd51c3 at net.sf.cglib.core.ReflectUtils.defineClass(ReflectUtils.java:464) Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @66cd51c3 at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) 解决方法也就是说我们jdk17要想使用这个cglib就必须解决这个问题,这个问题也就是兼容问题和jdk17的安全问题,像1.8版本的就没啥事配置如下--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/sun.net.util=ALL-UNNAMED
2023年03月09日
321 阅读
0 评论
1 点赞
2023-03-07
Spring框架生命周期十步demo
spring.xml文件配置<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- <bean id="test" class="com.spring6.web.UserAction"/>--> <!-- <bean id="beanlife" class="com.spring6.service.BeanLife" init-method="init" destroy-method="destroy"> <property name="name" value="你好"/> </bean>--> <bean class="com.spring6.service.BeanBeforePost"/> <bean id="beanTenLife" class="com.spring6.service.BeanTenLife" init-method="init" destroy-method="destroySingleton"> <property name="name" value="你好"/> </bean> </beans>BeanTenLife类代码package com.spring6.service; import org.springframework.beans.BeansException; import org.springframework.beans.factory.*; public class BeanTenLife implements BeanNameAware, BeanFactoryAware, BeanClassLoaderAware, InitializingBean,DisposableBean { private String name; public BeanTenLife() { System.out.println("构造函数启动"); } public void setName(String name) { System.out.println("set注入启动"); this.name = name; } public void getName() { System.out.println("使用Bean"); } public void init() { System.out.println("bean初始化"); } public void destroySingleton() { System.out.println("bean销毁"); } @Override public void setBeanClassLoader(ClassLoader classLoader) { System.out.println("bean的加载器"+classLoader.getClass()); } @Override public void setBeanFactory(BeanFactory beanFactory) throws BeansException { System.out.println("BeanFactory工程"+beanFactory.getClass()); } @Override public void setBeanName(String s) { System.out.println("setBeanName方法"+s); } @Override public void afterPropertiesSet() throws Exception { System.out.println("afterPropertiesSet方法"); } @Override public void destroy() throws Exception { System.out.println("销毁前面执行此"); } } 测试类package com.spring6.test; import com.spring6.service.BeanLife; import com.spring6.service.BeanTenLife; import com.spring6.web.UserAction; import org.junit.jupiter.api.Test; import org.springframework.context.support.ClassPathXmlApplicationContext; public class FirstSpringTest { @Test public void Test(){ ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("spring.xml"); UserAction test = (UserAction)context.getBean("test"); test.deleteRecord(); } /** * 七步生命周期 */ @Test public void BeanLife(){ ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("spring.xml"); BeanLife beanlife = context.getBean("beanlife", BeanLife.class); beanlife.getName(); context.close(); } /** * 十步生命周期 */ @Test public void BeanTenLife(){ ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("spring.xml"); BeanTenLife beanlife = context.getBean("beanTenLife", BeanTenLife.class); beanlife.getName(); context.close(); } } 测试截图
2023年03月07日
13 阅读
0 评论
2 点赞
1
...
7
8
9
...
19