MVC 增删改查

 /// <summary>
        /// 新增一个实体
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public virtual int AddEntity(T entity)
        {          
            dbContext.Entry<T>(entity).State = System.Data.EntityState.Added;
            return dbContext.SaveChanges();
        }
        /// <summary>
        /// 删除一个实体
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public virtual int DeleteEntity(T entity)
        {
            dbContext.Entry<T>(entity).State = System.Data.EntityState.Deleted;
            return dbContext.SaveChanges();
        }
        /// <summary>
        /// 修改一个实体
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public virtual int UpdateEntity(T entity)
        {
            dbContext.Entry<T>(entity).State = System.Data.EntityState.Modified;
            return dbContext.SaveChanges();
        }
        /// <summary>
        /// 批量新增实体
        /// </summary>
        /// <param name="entities"></param>
        /// <returns></returns>
        public virtual int AddEntities(params T[] entities)
        {
            int result = 0;
            for (int i = 0; i < entities.Count(); i++)
            {
                if (entities[i] == null)
                    continue;
                dbContext.Entry<T>(entities[i]).State = System.Data.EntityState.Added;
                if (i != 0 && i % 20 == 0)
                {
                    result += dbContext.SaveChanges();
                }
            }
            if (entities.Count() > 0)
                result += dbContext.SaveChanges();
            return result;
        }
 /// <summary>
        /// 批量删除实体
        /// </summary>
        /// <param name="where"></param>
        /// <returns></returns>
        public virtual int DeleteEntities(Expression<Func<T, bool>> where)
        {
 
            var temp = dbContext.Set<T>().Where(where);
            foreach (var item in temp)
            {
                dbContext.Entry<T>(item).State = System.Data.EntityState.Deleted;
            }
            return dbContext.SaveChanges();
        }
        /// <summary>
        /// 按条件查询
        /// </summary>
        /// <param name="where"></param>
        /// <returns></returns>
        public virtual IQueryable<T> LoadEntities(Expression<Func<T, bool>> where)
        {
            var temp = dbContext.Set<T>().Where(where);
            return temp;
        }
        /// <summary>
        /// 按条件查询,排序
        /// </summary>
        /// <typeparam name="S"><peparam>
        /// <param name="where"></param>
        /// <param name="orderBy"></param>
        /// <param name="isAsc"></param>
        /// <returns></returns>
        public virtual IQueryable<T> LoadEntities<S>(Expression<Func<T, bool>> where, Expression<Func<T, S>> orderBy, bool isAsc)
        {
            var temp = dbContext.Set<T>().Where(where);
            if (isAsc)
                temp = temp.OrderBy<T, S>(orderBy);
            else
                temp = temp.OrderByDescending<T, S>(orderBy);
            return temp;
        }
        /// <summary>
        /// 按条件查询,分页
        /// </summary>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <param name="rowCount"></param>
        /// <param name="where"></param>
        /// <returns></returns>
        public virtual IQueryable<T> LoadPageEntities(int pageIndex, int pageSize, out int rowCount, Expression<Func<T, bool>> where)
        {
            var temp=dbContext.Set<T>().Where(where);
            rowCount = temp.Count();
            temp = temp.Skip(pageSize * (pageIndex - 1)).Take(pageSize);
            return temp;
        }
        /// <summary>
        /// 按条件查询,分页,排序
        /// </summary>
        /// <typeparam name="S"><peparam>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <param name="rowCount"></param>
        /// <param name="where"></param>
        /// <param name="orderBy"></param>
        /// <param name="isAsc"></param>
        /// <returns></returns>
        public virtual IQueryable<T> LoadPageEntities<S>(int pageIndex, int pageSize, out int rowCount, Expression<Func<T, bool>> where, Expression<Func<T, S>> orderBy, bool isAsc)
        {
            var temp = dbContext.Set<T>().Where(where);
            rowCount = temp.Count();
            if (isAsc)
                temp = temp.OrderBy<T, S>(orderBy).Skip(pageSize * (pageIndex - 1)).Take(pageSize);
            else
                temp = temp.OrderByDescending<T, S>(orderBy).Skip(pageSize * (pageIndex - 1)).Take(pageSize);
            return temp;
        }

MVC模式的实现对数据库的增删改查 部分代码: package dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; import common.DBConnection; import bean.Contact; public class ContactDAO { public List getAllContact() throws Exception{ Connection conn=DBConnection.getConntion(); PreparedStatement ps=conn.prepareStatement("select * from Contact"); ResultSet rs=ps.executeQuery(); List list = new ArrayList(); while(rs.next()){ int id = rs.getInt("id"); String name = rs.getString("name"); String phone = rs.getString("phone"); String address = rs.getString("address"); Contact c = new Contact(); c.setId(id); c.setName(name); c.setPhone(phone); c.setAddress(address); list.add(c); } rs.close(); ps.close(); conn.close(); return list; } public void addContact(String name,String phone,String address) throws Exception{ String sql = "insert into contact(id,name,phone,address) values(seq_contact.nextval,?,?,?)"; Connection con = DBConnection.getConntion(); PreparedStatement pstmt = con.prepareStatement(sql); pstmt.setString(1, name); pstmt.setString(2, phone); pstmt.setString(3, address); pstmt.executeUpdate(); } public void delContact(int id) throws Exception{ String sql = "delete from contact where id=?"; Connection con = DBConnection.getConntion(); PreparedStatement pstmt = con.prepareStatement(sql); pstmt.setInt(1, id); pstmt.executeUpdate(); } public Contact getContactById(int id) throws Exception{ String sql = "select * from Contact where id=?"; Connection con = DBConnection.getConntion(); PreparedStatement pstmt = con.prepareStatement(sql); pstmt.setInt(1, id); ResultSet rs = pstmt.executeQuery(); Contact c = null; while(rs.next()){ // int id = rs.getInt("id"); String name=rs.getString("name"); String p
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值