• 购物车项目(MVC没用任何框架)


    1.先了解一个思路就是dao-model-service-jsp

    一个流程的东西

    2.项目所需的jar包 

     自己在网上都可以找的jar包

    3.需要将c3p0的配置文件写入classpath路径下面

    文件名:c3p0-config.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <c3p0-config>
        <default-config>
            <property name="driverClass">com.mysql.jdbc.Driver</property>
            <property name="jdbcUrl">jdbc:mysql://localhost:3306/bookstore
            </property>
            <property name="user">root</property>
            <property name="password">root</property>
            <!-- 初始化连接池数量 -->
            <property name="initialPoolSize">10</property>
            
            <!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->
            <property name="maxIdleTime">60</property>
    
            <!--连接池中保留的最大连接数。Default: 15 -->
            <property name="maxPoolSize">25</property>
            
            <!--连接池中保留的 最小连接数 ,Default:3  -->
            <property name="minPoolSize">10</property>
        </default-config>
    </c3p0-config>

    4.c3p0untils文件

    package bookstore.untils;
    
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    import javax.sql.DataSource;
    
    import com.mchange.v2.c3p0.ComboPooledDataSource;
    
    //数据库连接成功
    public class C3P0Utils {
        private static DataSource ds  = new ComboPooledDataSource();
        /**
         * 返回一个数据源,然后得到一个数据库连接
         * @return
         */
        public static DataSource getDataSource(){
            return ds;
        }
        /*
         * 返回一个连接
         */
        public static Connection getConnection(){
            try {
                return ds.getConnection();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                throw new RuntimeException("服务器错误");
            }
        }
        public static void closeAll(Connection conn,Statement statement,ResultSet resultSet){
            if(resultSet != null){
                try {
                    resultSet.close();
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                resultSet = null;
            }
            if(statement != null){
                try {
                    statement.close();
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                statement = null;
            }
            if(conn != null){
                try {
                    conn.close();
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                    conn = null;
                }
            }
        }
    }
  • 相关阅读:
    71、salesforce的JSON方法
    70、saleforce的Json输出
    69、schema的相关方法
    javascript时间格式转换(今天,昨天,前天)
    移动web开发都会遇到的坑(会持续更新)
    javascript实现SHA1算法
    移动端重构--重置样式
    Grunt完整打包一个项目实例
    谈谈HTML5中的history.pushSate方法,弥补ajax导致浏览器前进后退无效的问题
    关于display:inline-block布局导致错位问题分析
  • 原文地址:https://www.cnblogs.com/whr-blogs/p/12256691.html
Copyright © 2020-2023  润新知