传智播客bbs项目,在Properties文件中配置BeanFactory

2024-04-26 07:32

本文主要是介绍传智播客bbs项目,在Properties文件中配置BeanFactory,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        今天继续学习bbs项目,和学基础知识太不一样了,遇到太多的问题,汤老师经验丰富,跟他学了不少排错方法技巧。看汤老师解决异常的方法,实际上遇到的异常都应该能够自行解决的,只是有有时候长时间解决不了就急了,思路也就乱了。主要原因还是经验,踏实学吧,对今天遇到的比较重要的知识,总结一下。


     BeanFactory   bean工厂,用于管理bean,可以把bean进行命名用=连
接它的完整路径存放在.properties文件中,然后
1.通过输入流读取.properties文件的内容,
2.调用Properties类的load()方法按行从输入流中读取属性列表(键和元
素对)。
3,提出bean类名,使用反射获得类的实例,放到map中,使用
beanName作为key,beanObject为value。
配置文件中定义格式:
beanName = beanClassName
方法如下
private static Map<String, Object> beans = new HashMap<String,

Object>();
public static void initBeans(String properties) {
     Properties props = new Properties();
     InputStream inStream = null;
     try {
         inStream =BeanFactory.class.getClassLoader
       ().getResourceAsStream(properties);
 props.load(inStream);
          } catch (Exception e) {
 throw new RuntimeException(e);
           } finally {
    if (inStream != null) {
       try {
  inStream.close();
            } catch (IOException e) {
               e.printStackTrace();
            }
        }
              }

      for (Object key : props.keySet()) {
           String beanName = (String) key;
           String className = props.getProperty(beanName);
           // 使用反射生成实例
           try {
    Object bean = Class.forName(className).newInstance();
    beans.put(beanName, bean);
    } catch (Exception e) {
       throw new RuntimeException(e);
 }
       }

}
最后提供一个用于在其他地方获取bean的方法

public Object getBean(String beanName) {
  return beans.get(beanName);
 }

其它地方获取bean使用:getBean(beanName);

 

md5加密算法
网站会员注册都要有用户名和密码,为了防止有些人可以进入数据库查
看用户的密码,要首先对密码进行MD5加密再存入数据库。md5加密算法用于对一段信息进行不可逆的变换运算,产生一个128比特位的数字摘要。实际项目中的密码都是进行加密后存入数据库的。在对用户的密码进行加密时不能采用可逆的加密算法,因为可逆算法加密后的结果可以很容易解密,不能采用可逆的算法。实际项目中一般都采用md5算法对用户注册的密码进行加密,即使得到了加密后的结果,也无法根据这个结果得到用户的密码,这样就不用担心可以进入数据库的人获取用户的密码信息了。在用户注册以后进行登录时,系统对用户输入的密码也进行md5运算,将结果与数据库中存在的数据进行比较,如果两个数据相等,则说明用户输入的密码正确,允许等录,否则登录失败。

 

   jdk提供了一个java.security.MessageDigest类,程序可以通过这个类调

用md5和sha算法来产生数字摘要。首先调用MessageDigest类的getInstance静态方法获得某个算法的MessageDigest实例对象,然后调用MessageDigest实例对象的update方法传递要进行数字摘要运算的数据源,数据源可以通过多次调用update方法进行累加,最后调用MessageDigest实例对象的digest方法产生数字摘要。

这篇关于传智播客bbs项目,在Properties文件中配置BeanFactory的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/936956

相关文章

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

SpringBoot多数据源配置完整指南

《SpringBoot多数据源配置完整指南》在复杂的企业应用中,经常需要连接多个数据库,SpringBoot提供了灵活的多数据源配置方式,以下是详细的实现方案,需要的朋友可以参考下... 目录一、基础多数据源配置1. 添加依赖2. 配置多个数据源3. 配置数据源Bean二、JPA多数据源配置1. 配置主数据

Spring 基于XML配置 bean管理 Bean-IOC的方法

《Spring基于XML配置bean管理Bean-IOC的方法》:本文主要介绍Spring基于XML配置bean管理Bean-IOC的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录一. spring学习的核心内容二. 基于 XML 配置 bean1. 通过类型来获取 bean2. 通过

将Java项目提交到云服务器的流程步骤

《将Java项目提交到云服务器的流程步骤》所谓将项目提交到云服务器即将你的项目打成一个jar包然后提交到云服务器即可,因此我们需要准备服务器环境为:Linux+JDK+MariDB(MySQL)+Gi... 目录1. 安装 jdk1.1 查看 jdk 版本1.2 下载 jdk2. 安装 mariadb(my