SSH环境搭建(一)使用配置文件整合SSH

别再被网站识别成机器人了!用Python的undetected_chromedriver+Selenium实现无痕自动化 本文详细介绍了如何利用Python的undetected_chromedriver和Selenium实现无痕自动化,突破现代网站的反爬系统。通过修正浏览器指纹、模拟人类操作行为,并结合实战案例,帮助开发者构建难以被识别的自动化脚本,适用于电商监控等场景。 阅读详情

SSH开发环境搭建:
第一个版本:保留spring,struts2,hibernate的配置文件.
一,准备实体类业务层和持久层

实体类Customer

public class Customer {
    private int custId;
    private String custName; 
    private String custSource;  
    private String custIndustry;  
    private String custLevel;   
    private String custAddress;    
    private String custPhone;
    public String getCustName() {
        return custName;
    }
    public void setCustName(String custName) {
        this.custName = custName;
    }
    public String getCustSource() {
        return custSource;
    }
    public void setCustSource(String custSource) {
        this.custSource = custSource;
    }
    public String getCustIndustry() {
        return custIndustry;
    }
    public void setCustIndustry(String custIndustry) {
        this.custIndustry = custIndustry;
    }
    public String getCustLevel() {
        return custLevel;
    }
    public void setCustLevel(String custLevel) {
        this.custLevel = custLevel;
    }
    public String getCustAddress() {
        return custAddress;
    }
    public void setCustAddress(String custAddress) {
        this.custAddress = custAddress;
    }
    public String getCustPhone() {
        return custPhone;
    }
    public void setCustPhone(String custPhone) {
        this.custPhone = custPhone;
    }
    @Override
    public String toString() {
    return "Customer [custid=" + custId + ", custName=" + custName
        + ", custSource=" + custSource + ", custIndustry="
        + custIndustry + ", custLevel=" + custLevel + ", custAddress="
        + custAddress + ", custPhone=" + custPhone + "]";
    }
    public int getCustId() {
        return custId;
    }
    public void setCustId(int custId) {
        this.custId = custId;
    }

}

持久层CustomerDao

public interface CustomerDao {
    /*
     * 
     * 查询所有客户
     */
    public List<Customer> findAll();

    /*
     * 保存客户
     * 
     */
    public void save(Customer customer);


}
/*
 * 持久层实现类
 */

public class CustomerDaoImpl implements CustomerDao {

    @Override
    public List<Customer> findAll() {

    System.out.println("实现了查询客户列表");
    return null;
    }

    @Override
    public void save(Customer customer) {
    System.out.println("实现了保存客户");
    }




}

业务层CustomerService

public interface CustomerService {
    /*
     * 
     * 查询所有客户
     */
    public List<Customer> findAll();

    /*
     * 保存客户
     * 
     */
    public void save(Customer customer);


}
/*
 * 业务层实现类
 */
public class CustomerServiceImpl implements CustomerService {

    CustomerDao customerDao = new CustomerDaoImpl();
    @Override
    public List<Customer> findAll() {
    customerDao.findAll();
    return null;
    }

    @Override
    public void save(Customer customer) {
    customerDao.save(customer);
    }

}

二,搭建spring的ioc开发环境
在src目录下创建bean.xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context 
        http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/aop
        http://www.springframework.org/schema/aop/spring-aop.xsd
        http://www.springframework.org/schema/tx
        http://www.springframework.org/schema/tx/spring-tx.xsd">

    <!-- 配置service -->     
   <bean id="customerService" class="com.service.impl.CustomerServiceImpl">
   </bean>
</beans>

搭建完环境后,测试是否搭建成功

public class Test02 {
    public static void main(String[] args) {

    ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
    CustomerService customerService = (CustomerService) ac.getBean("customerService");
    customerService.findAll();
    }
}

这里写图片描述

在成功搭建spring环境后,搭建hibernate环境

三 , 搭建hibernate开发环境
1, 在src目录下创建hibernate.fcg.xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
<!-- 
    配置SessionFactory
        SessionFactory用于创建Session对象
            Session对象就是hibernate中操作数据库的核心对象
        创建SessionFactory必须的三个部分
        第一部分:
            连接数据库的信息
        第二部分:
            hibernate的可选配置
        第三部分:
            映射文件的位置
 -->
    <session-factory>
        <!-- 第一部分:连接数据库的信息 -->
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/ssh?characterEncoding=UTF-8 </property>
        <property name="hibernate.connection.username">root</property>
        <property name="hibernate.connection.password">123456</property>
        <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
        <!-- 可选配置 -->
            <!-- 显示sql语句 -->
        <property name="hibernate.show_sql">true</property>
            <!-- 格式化输出sql语句 -->
        <property name="hibernate.format_sql">true</property>
            <!-- 采用哪种方式生成DDL语句 
                update:表示检查实体类的映射配置和数据库的表结构是否一致,如果不一致,更新表结构
            -->
        <property name="hibernate.hbm2ddl.auto">update</property>
        <!-- 配置连接池 -->
        <property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
        <!-- 配置连接池参数信息 -->
        <property name="hibernate.c3p0.max_size">5</property>   <!-- 最大连接数 -->
        <property name="hibernate.c3p0.min_size">2</property>   <!-- 最小连接数 -->
        <property name="hibernate.c3p0.timeout">5000</property> <!-- 超时时间 -->
        <property name="hibernate.c3p0.max_statements">100</property>   <!-- 最大执行的命令格个数 -->
        <property name="hibernate.c3p0.idle_test_period">30000</property> <!-- 空闲测试时间 -->
        <property name="hibernate.c3p0.acquire_increment">2</property>  <!-- 连接不够用时,每次增加的个数 -->
        <!-- 把session和线程绑定,从而实现一个线程只有一个session -->
        <!-- hibernate的session -->
        <property name="hibernate.current_session_context_class">thread</property>
        <!-- 映射配置文件的位置 -->
        <mapping resource="com/entity/Customer.hbm.xml" />
    </session-factory>
</hibernate-configuration>

2, 在实体类目录下创建 实体类名.hbm.xml配置文件

<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.entity">
    <!-- name:类名  table:表名 -->
    <class name="Customer" table="Customer">
        <id name="custId" column="custId">
        <!-- 主键生成方式 
            native : 使用本地数据库的自动增长能力
        -->
            <generator class="native"></generator>
        </id>
        <property name="custName" column="custName"></property>
        <property name="custSource" column="custSource"></property>
        <property name="custIndustry" column="custIndustry"></property>
        <property name="custLevel" column="custLevel"></property>
        <property name="custAddress" column="custAddress"></property>
        <property name="custPhone" column="custPhone"></property>
    </class>
</hibernate-mapping>

搭建完环境后,测试是否搭建成功

public class Test01 {
    public static void main(String[] args) {
    Customer customer = new Customer();
    customer.setCustName("asd");
    //加载配置文件
    Configuration cfg = new Configuration();
    cfg.configure();
    //创建SessionFactory
    SessionFactory factory = cfg.buildSessionFactory();
    //获取session
    Session session = factory.getCurrentSession();
    //开启事务
    Transaction tx = session.beginTransaction();
    //执行操作
    session.save(customer);
    //提交事务
    tx.commit();
    //关闭资源
    factory.close();


    }

}

hibernate能够成功运行
这里写图片描述

在hibernate环境搭建成功后,需要改写持久层的代码,使其可以操作数据库
在持久层中使用HibernateTemplate代替session
使用HibernateTemplate,有一个很重要的原因就在于我们不想直接控制事务,不想直接去获取,打开Session,开始一个事务,处理异常,提交一个事务,最后关闭一个SessionHibernateTemplate 是Hibernate操作进行封装,我们只要简单的条用HibernateTemplate 对象,传入hql和参数,就获得查询接口,至于事务的开启,关闭,都交给HibernateTemplate 对象来处理我们自己只专注于业务,不想去作这些重复而繁琐的操作。我们把这些责任全部委托给了 HibernateTemplate,然后使用声明式的配置来实现这样的功能。

四,整合hibernate和spring
将hibernate的配置交给spring
即在spring里写hibernate的配置文件,这里是将hibernate的配置文件的位置告诉给spring,使spring获取hibernate配置文件的内容.

bean.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:tx="http://www.springframework.org/schema/tx"
    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
        http://www.springframework.org/schema/context 
        http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/aop
        http://www.springframework.org/schema/aop/spring-aop.xsd
        http://www.springframework.org/schema/tx
        http://www.springframework.org/schema/tx/spring-tx.xsd
        ">
    <!-- 配置service -->     
   <bean id="customerService" class="com.service.impl.CustomerServiceImpl">
        <property name="customerDao" ref="customerDao"></property>
   </bean>
   <!-- 配置Dao -->
   <bean id="customerDao" class="com.dao.impl.CustomerDaoImpl">
        <property name="hibernateTemplate" ref="hibernateTemplate"></property>
   </bean>
   <!-- 配置hibernateTemplate -->
   <bean id="hibernateTemplate" class="org.springframework.orm.hibernate5.HibernateTemplate">
        <property name="sessionFactory" ref="sessionFactory"></property>


   </bean>
   <!-- spring接管sessionFactory的创建 
        用spring提供的提高sessionFactory:LocalSessionFactoryBean
        创建sessionFactory有三部分信息
            就是hibernate配置文件的信息      
   -->
   <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
        <!-- 注入hibernate配置文件 -->
        <property name="configLocation" value="classpath:hibernate.cfg.xml"></property>
   </bean>

   <!-- 配置事务管理器 -->
   <bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory"></property>
   </bean>
   <!-- 配置事务的通知 -->
   <tx:advice id="txAdvice" transaction-manager="transactionManager">
        <tx:attributes>
            <tx:method name="*" propagation="REQUIRED" read-only="false"/>
            <tx:method name="find*" propagation="SUPPORTS" read-only="true"/>
        </tx:attributes>
   </tx:advice>
   <!-- 配置AOP -->
   <aop:config>
        <!-- 配置切入点表达式 -->
        <aop:pointcut expression="execution(* com.service.impl.*.*(..))" id="pt1"/>
        <!-- 建立切入点表达式和事务通知的关联 -->
        <aop:advisor advice-ref="txAdvice" pointcut-ref="pt1"/>
   </aop:config>
</beans>

hibernate.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
<!-- 
    配置SessionFactory
        SessionFactory用于创建Session对象
            Session对象就是hibernate中操作数据库的核心对象
        创建SessionFactory必须的三个部分
        第一部分:
            连接数据库的信息
        第二部分:
            hibernate的可选配置
        第三部分:
            映射文件的位置
 -->
    <session-factory>
        <!-- 第一部分:连接数据库的信息 -->
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/ssh?characterEncoding=UTF-8 </property>
        <property name="hibernate.connection.username">root</property>
        <property name="hibernate.connection.password">123456</property>
        <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
        <!-- 可选配置 -->
            <!-- 显示sql语句 -->
        <property name="hibernate.show_sql">true</property>
            <!-- 格式化输出sql语句 -->
        <property name="hibernate.format_sql">true</property>
            <!-- 采用哪种方式生成DDL语句 
                update:表示检查实体类的映射配置和数据库的表结构是否一致,如果不一致,更新表结构
            -->
        <property name="hibernate.hbm2ddl.auto">update</property>
        <!-- 配置连接池 -->
        <property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
        <!-- 配置连接池参数信息 -->
        <property name="hibernate.c3p0.max_size">5</property>   <!-- 最大连接数 -->
        <property name="hibernate.c3p0.min_size">2</property>   <!-- 最小连接数 -->
        <property name="hibernate.c3p0.timeout">5000</property> <!-- 超时时间 -->
        <property name="hibernate.c3p0.max_statements">100</property>   <!-- 最大执行的命令格个数 -->
        <property name="hibernate.c3p0.idle_test_period">30000</property> <!-- 空闲测试时间 -->
        <property name="hibernate.c3p0.acquire_increment">2</property>  <!-- 连接不够用时,每次增加的个数 -->
        <!-- 把session和线程绑定,从而实现一个线程只有一个session -->
<!--        <property name="hibernate.current_session_context_class">thread</property> -->

        <!-- spring和hibernate整合时,绑定需改为下面这种方式,也可以不写,spring会自动帮我们绑定 -->   
        <property name="current_session_context_class">
             org.springframework.orm.hibernate5.SpringSessionContext
        </property>

        <!-- 映射配置文件的位置 -->
        <mapping resource="com/entity/Customer.hbm.xml" />
    </session-factory>
</hibernate-configuration>

持久层实现类:使用set注入的方式

/*
 * 持久层实现类
 */

public class CustomerDaoImpl implements CustomerDao {
    //spring提供的类似于session的对象
    private HibernateTemplate hibernateTemplate;

    @Override
    public List<Customer> findAll() {

    return (List<Customer>) hibernateTemplate.find("from Customer");
    }

    @Override
    public void save(Customer customer) {
    hibernateTemplate.save(customer);
    }

    public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
        this.hibernateTemplate = hibernateTemplate;
    }




}

业务层实现类:使用set注入方式

/*
 * 业务层实现类
 */
public class CustomerServiceImpl implements CustomerService {

    CustomerDao customerDao;

    @Override
    public List<Customer> findAll() {
    customerDao.findAll();
    return null;
    }

    @Override
    public void save(Customer customer) {
    customerDao.save(customer);
    }

    public void setCustomerDao(CustomerDao customerDao) {
        this.customerDao = customerDao;
    }

}

五, 整合spring和struts2
在src目录下创建struts2的配置文件struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>
    <package name="customer-action" extends="struts-default" namespace="/customer">
        <action name="customerAction_*" class="com.action.CustomerAction" method="{1}">
            <result name="{1}">/WEB-INF/{1}.jsp</result>
        </action>
    </package>  
</struts>

在web.xml中配置spring监听器和struts2核心过滤器

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
  <display-name>struts2</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <!-- struts2核心过滤器 -->
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
  <!-- 配置spring监听器,用于监听servletContext对象创建,同时为我们创建spring容器
        默认情况下:只能加载web-inf目录的spring配置文件,同时文件名为:applicationContext.xml
   -->
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>


</web-app>

将src目录下spring的配置文件bean.xml复制到WEB-INF目录下,并改名为
applicationContext.xml
这里写图片描述

Action

/*
 * 
 * 客户的动作类
 */

public class CustomerAction {

    CustomerService customerService ;

    /*
     * 此种方式解决了容器多例问题,保证了容器每一个应用只有一个,但是代码变臃肿了
     * 可以导入struts2-spring-plugin-2.3.34.jar,当引入这个插件后,原先所struts创建的action类,交给了spring创建。 
    在struts2-spring-plugin.jar中有一个struts-plugin.xml,里面声明了action类由spring工厂创建。
     *  
     */
   /* public CustomerAction(){
    ServletContext application = ServletActionContext.getServletContext();
    ApplicationContext ac = WebApplicationContextUtils.getWebApplicationContext(application);
    System.out.println(ac);
    CustomerService customerService = (CustomerService) ac.getBean("customerService");
    this.setCustomerService(customerService);
    }*/

    public String AddUI(){

    return "AddUI";
    }

    public String ListUI(){
    List<Customer> list = customerService.findAll();
    System.out.println(list);

    return "ListUI";
    }
    /*
     * 提供set方法,让spring注入
     */
    public void setCustomerService(CustomerService customerService) {
        this.customerService = customerService;
    }
}
骁龙X Elite笔记本重装Windows 11 Arm64系统完整指南与避坑手册 UEFI安全启动和Arm64架构是理解现代计算设备系统部署的基础。UEFI取代传统BIOS,提供了更安全的启动环境和模块化固件接口,而Arm64架构则以其高能效特性,在移动和新兴PC领域日益重要。其技术价值在于为设备带来更快的启动速度、更强的安全防护以及更优的功耗表现。在应用场景上,这直接关系到搭载高通骁龙X Elite等Arm处理器的笔记本电脑的系统安装与维护。对于这类设备,重装系统远非插入通用安装盘那么简单,核心挑战在于必须使用专为Arm64编译的Windows镜像,并需提前集成芯片组、网络等硬件的专属 阅读详情

相关推荐

px3 有感分析

px3 后续分析

qq_39707917的博客 3117

前端入职环境搭建

环境搭建

MissXu666的博客 336

电力现货交易市场-报价方式

电是一种能源,也是一种商品,既然是商品自然可以在市场中进行自由交易。

qq_38225433的博客 5121

SSH服务配置

SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程 复制等功能。SSH 协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令,SSH 为建立在应用层和传输层基础上的安全协议。对数据进行压缩,加快传输速度。SSH客户端SSH服务端优点:数据传输是加密的,可以防止信息泄漏数据传输是压缩的,可以提高传输速度。

Liqi23的博客 1万+

OnePose++: Keypoint-Free One-Shot Object Pose Estimation without CAD Models

算法:首先采用LoFTR的细匹配模块,将粗匹配点周围的小窗口内,通过对比特征找到最相似的位置,细化当前特征点的位置。算法:PnP算法,利用3D点和2D投影点的对应关系,计算相机相对于物体的6D姿态(位置朝向)。算法:使用COLMAP,对2D粗匹配对(不依赖传统关键点匹配)进行特征轨迹计算并生成半稠密点云,每个3D点包含坐标和对应的2D投影点。算法:LoFTR粗匹配模块,将每一个像素点视为伪关键点,生成半稠密的2D匹配对。输入:优化后的3D、当前视图的2D特征点。输出:粗半稠密点云以及物体的特征轨迹。

雨落倾城的博客 888

非线性功率放大器对QAM传输BER性能的影响及补偿

1、线性功率放大器对传输性能的影响 为表述非线性功率放大器对传输性能的影响,以Saleh模型进行观察。具体来说,在QAM调制器之后添加一个非线性模块,使调制后的波形经历AM / AM和AM / PM转换。 在Saleh模型中,转换用四个参数表示,即AM / AM转换为????a和????a,AM / PM转换为????p和????p。 在Saleh模型中,AM / AM和AM / PM方程以输入电压u的大小表示为: 式中,FAM / AM是AM / AM转换的输出电压与输入电压的关系,而FAM

太阳帅帅的博客 2081

ssh安装与配置(详解版)

主要对openssh的安装,客户端和服务器的常见命令以及常用配置进行了超万字的详细总结

余识- 8万+

MaxENT生态位模型实战:从数据准备到论文发表的完整指南

本文提供MaxENT生态位模型从数据准备到论文发表的完整实战指南,涵盖物种分布数据处理、环境变量筛选、参数优化及结果可视化等关键步骤。特别介绍如何通过R语言进行高级建模优化,提升模型AUC值,并分享海洋生物专题研究中的数据处理技巧。适合生态学研究者快速掌握这一强大的物种分布预测工具,产出高质量研究成果。

tensor9flow的博客 304

SSH配置文件

OpenSSH常用配置文件有两个/etc/ssh/ssh_config 和 /etc/ssh/sshd_config ssh命令文件位置 /usr/sbin/sshd ssh服务端配置文件位置 /etc/ssh/sshd_config ssh客户端配置文件位置 /etc/ssh/ssh_config ssh_config 为客户端配置文件,sshd_config 为服务端配置文件,此外/etc/ssh/目录中还有一些其他文件,对这些文件进行下说明: moduli...

weixin_50196615的博客 1万+

SAP CPI 如何代理第三方接口?

代理接口是指在系统 A 和系统 B 之间引入一个中间层(如 SAP CPI),由中间层负责接收来自系统 A 的请求,进行必要的处理或转换,然后将请求转发给系统 B。由于 OData 服务通常使用 JSON 格式的数据,而某些内部系统可能需要 XML 格式,因此我们添加一个 JSON 到 XML 的转换器,以确保数据格式的兼容性。为了确保返回的数据格式符合内部系统的要求,添加一个 XML 到 JSON 的转换器,将 OData 服务的响应从 XML 转换为 JSON。在集成包中,添加一个新的集成流,命名为。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1749

Unet++改进33:添加ConvolutionalGLU(2024最新改进方法)|紧凑的网络结构和高效的运算

由于残差连接的深度退化效应,许多依赖堆叠层进行信息交换的高效视觉变形模型往往不能形成足够的信息混合,导致视觉感知不自然。为了解决这个问题,在本文中,我们提出了聚合注意力,这是一种基于仿生设计的令牌混合器,它模拟生物中央凹视觉和连续眼运动,同时使特征映射上的每个令牌具有全局感知。此外,我们结合了可学习的令牌,与传统的查询和键交互,这进一步多样化了亲和矩阵的生成,而不仅仅依赖于查询和键之间的相似性。我们的方法不依赖于堆叠进行信息交换,从而有效地避免了深度退化,实现了自然的视觉感知。

AIcurator的博客 684

ssh配置文件详解

简单来说,ssh是一种网络协议,用于计算机之间的加密登录。 如果一个用户从本地计算机,使用ssh协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。 需要指出的是,ssh只有一种协议,存在多种实现,既有商业实现,也有开源实现。

君逍遥o 7769

PCL Trimmed ICP实现点云精配准【2025最新版】

博客长期更新,本文最新更新时间为:2025年6月25日。抄袭狗记得来抄最新代码哦,抄都抄成错的,不够丢人钱。

点云侠的博客 37万+

SSH环境搭建(一)整合SSH配置文件

一,将hibernate配置文件写到applicationContext.xml中. &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org...

QEcode的博客 263

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

ssh整合步骤之一 搭建环境

ssh整合步骤之一 搭建环境

sfhinsc的博客 156

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

maven整合ssh

一.SSH框架整合过程回顾 1.导入jar包 2.搭建struts环境 创建action,创建struts.xml配置文件,配置action 配置struts2的过滤器 3.搭建hibernate环境 搭建实体类 配置实体类和数据库表映射关系 创建hibernate核心配置文件 引入映射配置文件 4.搭建spring环境 创建spring核心配置文件 让spring配置文件在服务器...

上千主上-贝库塔 1114

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

ssh整合步骤之一(搭建环境)

ssh整合主要可以分为3个步骤:搭建环境、设计架构、实现逻辑 以下是搭建环境的步骤 1、导入jar包       导入ssh基本jar包 2、导入ssh配置文件。       包括(struts.xml   hibernate.cfg.xml   `````.hbm.xml    applicationContext.xml   jdbc/properties) 3、整合strut与s

黄俊东的专栏 3553

SSH框架整合过程(Struts2+Spring+Hibernate

在学习Java框架的过程中,我总结过如下文章: MySQL数据库图文安装详解及相关问题  手把手在MyEclipse中搭建Hibernate开发环境  手把手在MyEclipse中搭建Spring开发环境      MyEclipse中搭建Struts2开发环境   在将三大框架都学习一遍之后,再来看看如何整合SSH框架。 先来看看SSH框架如何配合使用,如图所

Steven_ssm的博客 581

SSH整合步骤(1)

ssh整合主要可以分为3个步骤:搭建环境、设计架构、实现逻辑 以下是搭建环境的步骤 1、导入jar包       导入ssh基本jar包 2、导入ssh配置文件。       包括(struts.xml   hibernate.cfg.xml   `````.hbm.xml    applicationContext.xml   jdbc/properties)

黄俊东的专栏 2912

SSH整合

1.新建web工程,并把编码设为utf-8,新建文件config专门放配置文件(和src一样的那种) 2.添加框架环境: junit    右键工程build-path  addlibraries 加入版本4 strtus2             打开apps,解压struts2-blank-2.1.8.1.war,复制WEB-INF下lib内所有jar包即可(6个)     把web

baidu_20892741的专栏 282

Java之基于Eclipse搭建SSH框架(下)

在上篇博客里,我简单介绍了Tomcat滴配置与Struts2滴搭建,如果对这个还不会滴童鞋去看一下我滴上篇博客《Java之基于Eclipse搭建SSH框架(上)》。今天我们接着上篇博客滴内容,继续搭建我们滴SSH框架。 (一)在上篇博客滴基础上整合Spring: 首先我们把Spring所需要的jar(上篇博客有),复制到WebContent下的WEB-INF下的lib里面。其次在src下创建名为

SnowWitch的博客 1万+

【SSH】SSH框架整合开发环境的搭建

本文中总结使用SSH框架开发前的环境搭建的主要步骤。 在这里搭建的是Struts2+Spring4+Hibernate5的环境,对于新版本的整合其实也大同小异。 首先回顾一下SSH框架涉及各层的大致实现: 接下来进行环境的搭建: 无障碍整合 1.创建Web项目,导入jar包 Struts2 struts-2.3.24\apps\struts2-blank\WEB-INF\...

weixin_40423032的博客 406

Eclipse中搭建SSH环境

一、导入jar包

WindWhisper818的博客 2948

struts+spring+hibernate/ssh整合开发详细一

转自:http://hi.baidu.com/wuweihi/blog/item/20fb4dc491c9ebac8326ac11.html 终于,终于将SSH整合成功了,弄了几个小时,可以休息了(有的朋友弄了半个月,甚至重装了系统也没弄好,哎,庆幸啊)。碰到问题千万不要放弃,要相信没有解决不了的问题! 项目结构图: jsp部分为:index.jsp;success.jsp;fail.jsp U...

liuscau的专栏 245

JBPM4.4与SSH2整合

前言: 作为一个项目,我们不可能只使用JBPM,肯定需要跟其他框架相结合使用,而SSH2是我们常见的框架,那么SSH2与JBPM也是比较常见的组合了,今天就来介绍下他们是如何协和工作的。   正题: 一、先搭建SSH2环境 1.版本: Struts2.3.14+hibernate3.6.8+spring2.5.6+JBPM4.4 下载地址:

赵丹丹 廊坊师范学院信息技术提高班 七期 2018

SSH框架的基本结构整合

SSH的整合时 第一:先Struts和Spring整合 第二:在Hibernate和Spring整合 第一步:先导入架包 pom.xml中(架包要统一,不然运行时会提示架包冲突。架包冲突不会影响功能) ...

qq_44424498的博客 711
上一篇: SSH : java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh
下一篇: SSH环境搭建(一)整合SSH配置文件
QEcode
博客等级 码龄10年 39粉丝 147原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值