Util

 

Constant.java

public class Constant {
 //提高可读性
 public static final int  NORMAL_LEVEL = 1;//普通
 public static final int  HIGHT_LEVEL = 2;//高级
 public static final int  VIP_LEVEL = 3;//VIP
 //处理结果
 public static final int  EXECUTE_OK = 0; //成功
 public static final int  EXECUTE_FAIL = 1; //失败
 
 //向Session存放的key,避免冲突
 public static final String USER_KEY =
        "com.dang.user";
 public static final String CART_KEY =
        "com.dang.cart";
 
}

=================================================

VerifyCodeUtils.java 文件

package org.dang.action.util;

import java.util.UUID;

/**
 * 邮箱验证码工具类
 * @author Administrator
 *
 */
public class VerifyCodeUtils {
 /**
  * 生成UUID
  * @return
  */
 public static String generateCode() {
  UUID uuid = UUID.randomUUID();
  return uuid.toString() ;
 }

 /**
  * 获取邮箱验证码的UUID部分
  * @param input
  * @return
  */
 public static String getUUID(String input) {
  if (input == null)
   return null;
  if (input.lastIndexOf("_") < 0)
   return null;
  return input.substring(0, input.lastIndexOf("_"));
 }
 
 /**
  * 获取用户ID
  * @param input
  * @return
  */
 public static Integer getUserId(String input) {
  if (input == null)
   return null;
  if (input.lastIndexOf("_") < 0)
   return null;
  return Integer.valueOf(input.substring(input.lastIndexOf("_") + 1));
 }
 
 public static void main(String[] args){
  System.out.println(generateCode());
  System.out.println(generateCode());
 }
}

=================================================

MD5加密算法

MD5Utils.java

public class MD5Utils {
 public static String md5(String str) {
  try {
   //首先利用MD5算法将密码加密,变成等长字节
   MessageDigest md = MessageDigest.getInstance("MD5");
   byte[] b1 = md.digest(str.getBytes());
   //将等长字节利用Base64算法转换成字符串
   BASE64Encoder encoder = new BASE64Encoder();
   return encoder.encode(b1);
  } catch (Exception e) {
   return null;
  }

 }
 

===============================================

EmailUtils.java 文件

public class EmailUtils {
 public static int sendEmail(String code,String email){
  System.out.println("给"+email+"发送了邮箱验证码");
  System.out.println("验证码为:"+code);
  //TODO 邮件发送
  return Constant.EXECUTE_OK;
 }
}

 

 ================================================

DBUtil.java 连接池

import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;

import javax.sql.DataSource;

import org.apache.commons.dbcp.BasicDataSourceFactory;

 

public class DBUtil {
 //连接池对象
 private static DataSource dataSource;
 //负责将connection与当前执行线程绑定
 private static ThreadLocal<Connection> connLocal= new ThreadLocal<Connection>();
 
 static {
  try {
  Properties props = new Properties();
  props.load(DBUtil.class.getClassLoader().getResourceAsStream("dbcp.properties"));
   dataSource = BasicDataSourceFactory.createDataSource(props);
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
 
 
 public static Connection openConnection()throws SQLException{
  Connection conn = connLocal.get();
  if(conn == null){
   conn = dataSource.getConnection();
   connLocal.set(conn);
  }
  return conn;
 }
 
 public static void closeConnection() throws SQLException{
  Connection conn = connLocal.get();
  connLocal.set(null);
  if(conn != null && !conn.isClosed()){
   conn.close();
  }
 }
 
 
 
 
}

 

MATLAB主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性内容概要:本文主要介绍了一种在MATLAB环境下实现的主动噪声和振动控制算法,该算法针对较大的次级路径变化具有较强的鲁棒性。文中详细阐述了算法的设计原理与实现方法,重点解决了传统控制系统中因次级路径动态变化导致性能下降的问题。通过引入自适应机制和鲁棒控制策略,提升了系统在复杂环境下的稳定性和控制精度,适用于需要高精度噪声与振动抑制的实际工程场景。此外,文档还列举了多个MATLAB仿真实例及相关科研技术服务内容,涵盖信号处理、智能优化、机器学习等多个交叉领域。; 适合人群:具备一定MATLAB编程基础和控制系统理论知识的科研人员及工程技术人员,尤其适合从事噪声与振动控制、信号处理、自动化等相关领域的研究生和工程师。; 使用场景及目标:①应用于汽车、航空航天、精密仪器等对噪声和振动敏感的工业领域;②用于提升现有主动控制系统对参数变化的适应能力;③为相关科研项目提供算法验证与仿真平台支持; 阅读建议:建议读者结合提供的MATLAB代码进行仿真实验,深入理解算法在不同次级路径条件下的响应特性,并可通过调整控制参数进一步探究其鲁棒性边界。同时可参考文档中列出的相关技术案例拓展应用场景。
06-13
### Util 的含义与相关文件 `Util` 是一个常见的术语,通常用于描述工具类或工具函数的集合。它代表“Utility”(工具),主要用于封装一些通用的功能或方法,这些功能可能不直接属于某个特定模块,但对整个项目有帮助。 #### 1. **Util 的概念** `Util` 文件或类通常包含一组静态方法或函数,用于实现一些通用的小功能或工具逻辑。例如,字符串处理、日期格式化、文件操作等[^2]。由于这些功能通常是跨模块使用的,因此将它们集中在一个地方可以提高代码的复用性和可维护性。 #### 2. **Util 的命名问题** 在实际开发中,`Util` 的命名可能会引发一些争议。虽然 `Util` 是一个广泛接受的名称,但它也可能导致命名模糊的问题。例如,不同开发者可能对 `Utils` 或 `Tools` 的理解存在差异,这可能导致命名不一致的情况[^1]。因此,在团队协作中,建议通过编码规范明确工具类的命名规则。 #### 3. **Util 的典型用途** 以下是 `Util` 类的一些常见用途: - **字符串处理**:提供字符串拼接、截取、替换等功能。 - **日期时间操作**:提供日期格式化、时间计算等功能。 - **文件操作**:提供文件读写、压缩解压等功能。 - **加密算法**:提供自定义的加密、签名生成等功能[^2]。 以下是一个简单的 Java 示例,展示如何创建一个 `Util` 类: ```java public class StringUtils { public static boolean isNullOrEmpty(String str) { return str == null || str.isEmpty(); } public static String reverse(String str) { if (isNullOrEmpty(str)) return ""; return new StringBuilder(str).reverse().toString(); } } ``` #### 4. **Util 的设计原则** 为了确保 `Util` 类的高效使用,需要遵循以下原则: - **单一职责**:每个 `Util` 类应专注于某一类功能,避免功能过于分散。 - **静态方法**:`Util` 类中的方法通常是静态的,便于直接调用。 - **无状态**:`Util` 类不应包含任何状态信息,以保证线程安全和易用性[^2]。 #### 5. **与其他模块的区别** `Util` 类与 `Service` 模块有显著区别。`Service` 模块通常用于封装业务逻辑,具有较高的抽象性和独立性,而 `Util` 类则更倾向于提供基础工具支持[^3]。例如,`Service` 可能负责用户认证或订单处理,而 `Util` 则负责字符串拼接或日期格式化。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ITdada

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值