实体类的创建

合集下载

hibernate的基本用法

hibernate的基本用法

hibernate的基本用法Hibernate是一个开源的Java框架,用于简化数据库操作。

它为开发人员提供了一个更加简单、直观的方式来管理数据库,同时也提高了应用程序的性能和可维护性。

本文将逐步介绍Hibernate的基本用法,包括配置、实体映射、数据操作等。

一、配置Hibernate1. 下载和安装Hibernate:首先,我们需要下载Hibernate的压缩包并解压。

然后将解压后的文件夹添加到Java项目的构建路径中。

2. 创建Hibernate配置文件:在解压后的文件夹中,可以找到一个名为"hibernate.cfg.xml"的文件。

这是Hibernate的主要配置文件,我们需要在其中指定数据库连接信息和其他相关配置。

3. 配置数据库连接:在"hibernate.cfg.xml"文件中,我们可以添加一个名为"hibernate.connection.url"的属性,用于指定数据库的连接URL。

除此之外,还需要指定数据库的用户名和密码等信息。

4. 配置实体映射:Hibernate使用对象关系映射(ORM)来将Java类映射到数据库表。

我们需要在配置文件中使用"mapping"元素来指定实体类的映射文件。

这个映射文件描述了实体类与数据库表之间的对应关系。

二、实体映射1. 创建实体类:我们需要创建一个Java类,用于表示数据库中的一行数据。

这个类的字段通常与数据库表的列对应。

同时,我们可以使用Hibernate提供的注解或XML文件来配置实体的映射关系。

2. 创建映射文件:可以根据个人喜好选择使用注解还是XML文件来配置实体类的映射关系。

如果使用XML文件,需要创建一个与实体类同名的XML文件,并在其中定义实体类与数据库表之间的映射关系。

3. 配置实体映射:在配置文件中,我们需要使用"mapping"元素来指定实体类的映射文件。

java中用builder模式实现实体类的创建

java中用builder模式实现实体类的创建

java中用builder模式实现实体类的创建在Java中,Builder模式是一种创建对象的设计模式,它通过将对象的构造和属性设置分离,以简化对象的创建过程。

该模式适用于需要创建具有多个可选属性的复杂对象。

在实体类中使用Builder模式可以提供更好的可读性和可维护性,同时也能保持类的不可变性。

以下是在Java中使用Builder模式创建实体类的步骤:1. 创建一个实体类,该类应该具有一些必需的属性和一些可选的属性。

所有属性都应该被声明为私有的,并且没有公共的setter方法。

```javapublic class Entityprivate final String requiredProperty;private final int optionalProperty1;private final String optionalProperty2;private Entity(Builder builder)this.requiredProperty = builder.requiredProperty;this.optionalProperty1 = builder.optionalProperty1;this.optionalProperty2 = builder.optionalProperty2;}// Getter方法//...```2. 在实体类中创建一个静态内部类Builder,该类具有与实体类相同的属性,并且具有一个公共的构造函数。

```javapublic class Entity//...public static class Builderprivate final String requiredProperty;private int optionalProperty1;private String optionalProperty2;public Builder(String requiredProperty)this.requiredProperty = requiredProperty;}// Setter方法//...public Entity builreturn new Entity(this);}```3. 在Builder类中为可选属性添加setter方法,并且每个setter方法都应该返回Builder对象本身,以便可以进行链式调用。

string转实体类对象_Java教程分享Java面向对象与面向过程

string转实体类对象_Java教程分享Java面向对象与面向过程

string转实体类对象_Java教程分享Java面向对象与面向过程Java是一种面向对象的编程语言,它提供了一个强大的特性-类(class)的概念,通过定义和使用类,我们可以将现实世界中的实体转换为代码中的实体类对象。

在Java中,我们可以使用字符串来表示一组字符,可以通过以下步骤将一个字符串转换为实体类对象:1. 创建实体类:首先,我们需要创建一个实体类,该类包含了我们希望从字符串中提取的属性,例如姓名、年龄、性别等。

实体类通常包含带有get和set方法的私有属性。

例如,下面是一个Person类的示例:```javapublic class Personprivate String name;private int age;private String gender;//构造方法public Person(String name, int age, String gender) = name;this.age = age;this.gender = gender;//获取和设置方法public String getNamreturn name;}public void setName(String name) = name;}public int getAgreturn age;}public void setAge(int age)this.age = age;}public String getGendereturn gender;}public void setGender(String gender) this.gender = gender;```2.解析字符串:接下来,我们需要将字符串解析为实体类对象。

通常情况下,我们可以使用一些分隔符(例如逗号、空格等)将字符串拆分成多个部分,并将每个部分赋值给实体类的属性。

例如,假设我们有以下字符串:```javaString input = "John,25,Male";```我们可以使用split(方法将其拆分为一个字符串数组,并将数组中的值赋给Person对象的属性:```javaString[] values = input.split(",");String name = values[0];int age = Integer.parseInt(values[1]);String gender = values[2];Person person = new Person(name, age, gender);```3.使用实体类对象:一旦我们将字符串解析为一个实体类对象,我们就可以使用该对象的属性和方法。

idea生成实体类的方式

idea生成实体类的方式

idea生成实体类的方式
在IntelliJ IDEA 中,可以使用以下几种方式生成实体类:
使用代码生成器:
打开你的数据库连接。

在项目视图中,右击你的数据库连接,选择“Generate Code”或“从数据库生成代码”。

选择要生成代码的表。

选择生成的代码类型(例如,Java POJO类)。

点击“Generate”或“OK”开始生成。

使用Live Templates:
打开一个Java 类文件。

在编辑器中输入sget(或者其他你设定的缩写),然后按Tab 键。

这将自动插入一个获取实体的方法模板。

你可以根据需要自定义这个模板。

使用注解:
在Java 类中,你可以使用JPA 注解来定义实体类和其属性。

例如,@Entity、@Table、@Column 等。

使用Hibernate Tools:如果你使用Hibernate 作为ORM 工具,Hibernate Tools 可以帮助你从数据库生成实体类和映射文件。

使用外部插件:有一些插件,如JBoss Tools,提供了更多的代码生成和实体管理功能。

手动编写:虽然这不是自动生成的方式,但对于许多开发者来说,手动编写实体类可能是最直接和可控的方法。

无论你选择哪种方法,都应确保生成的实体类满足你的项目需求,并考虑性能、可读性和可维护性等因素。

idea生成实体类clone方法

idea生成实体类clone方法

idea生成实体类clone方法实体类的clone方法是一种常用的方法,用于复制对象的数据和状态,生成一个新的独立的对象。

在Java中,可以通过实现Cloneable接口和重写clone方法来实现对象的克隆。

在本文中,我们将详细介绍如何生成实体类的clone方法,并给出一个示例。

一、什么是clone方法?在面向对象编程中,clone方法是一种用于复制对象的方法。

通过clone方法,可以在不使用new关键字的情况下,生成一个和原对象相同的新对象。

新对象和原对象是两个独立的实例,对新对象的修改不会影响原对象,反之亦然。

二、生成实体类的clone方法的步骤下面是生成实体类的clone方法的步骤:1. 实现Cloneable接口需要让实体类实现Cloneable接口。

Cloneable接口是一个标记接口,没有任何方法,只是用来标识类的对象可以被克隆。

2. 重写clone方法然后,在实体类中重写clone方法。

clone方法是Object类中的一个protected方法,需要在实体类中进行重写。

重写时,可以调用super.clone()方法得到一个克隆对象,然后再对克隆对象的属性进行复制。

3. 设置访问修饰符重写clone方法时,需要将访问修饰符设置为public,以便在其他类中可以调用clone方法。

4. 处理异常在重写clone方法时,可能会抛出CloneNotSupportedException 异常。

这是因为Cloneable接口是一个标记接口,没有定义任何方法,所以在调用clone方法时,会检查对象是否实现了Cloneable 接口。

如果没有实现,则会抛出该异常。

因此,在重写clone方法时,需要在方法声明中添加throws CloneNotSupportedException语句。

5. 返回克隆对象在重写的clone方法中,需要返回一个克隆对象。

克隆对象的类型应该和实体类相同。

三、示例下面是一个示例,演示了如何生成实体类的clone方法:```javapublic class Person implements Cloneable {private String name;private int age;public Person(String name, int age) { = name;this.age = age;}public String getName() {return name;}public int getAge() {return age;}@Overridepublic Person clone() throws CloneNotSupportedException {return (Person) super.clone();}}```在上面的示例中,Person类实现了Cloneable接口,并重写了clone方法。

mybatisx用法

mybatisx用法

mybatisx用法
1.
安装MyBatis-X插件:在MyBatis-X官网下载最新版本的插件,将其解压后放到项目的libs目录下,然后在MyBatis配置文件中添加插件配置。

2.创建实体类:根据数据库表结构创建实体类,实体类中的属性名应与表结构中的列
名对应,并使用注解或XML配置文件进行映射。

3.创建Mapper接口:创建与实体类对应的Mapper接口,并使用注解或XML配置文
件定义CRUD操作。

4.配置MyBatis-X:在MyBatis-X的配置文件中配置数据库连接信息和实体类、Mapper
接口等资源信息。

5.使用MyBatis-X:在应用程序中注入Mapper接口,调用其定义的方法进行数据库操
作。

需要注意的是,在使用MyBatis-X时,需要遵循一定的规范和最佳实践,例如合理设计数据库表结构、使用恰当的SQL语句、避免N+1查询问题等。

同时,还需要注意插件的版本兼容性和安全性问题,确保项目在开发和生产环境中的稳定性和安全性。

idea快速生成实体构造方法

idea快速生成实体构造方法

idea快速生成实体构造方法(原创实用版3篇)《idea快速生成实体构造方法》篇1在使用IntelliJ IDEA 编写Java 代码时,我们可以使用代码生成工具来快速生成实体类的构造方法。

以下是一种快速生成实体构造方法的方法:1. 首先,在IntelliJ IDEA 中打开你的Java 项目。

2. 找到你需要生成构造方法的实体类,将其选中。

3. 点击IntelliJ IDEA 菜单栏的"Code"选项。

4. 在"Code"菜单中选择"Generate",然后选择"Constructors"选项。

5. 在"Constructors"对话框中,你可以选择要生成构造方法的类型,如"No-args constructor"(无参构造方法)或"With fields"(带有字段的构造方法)。

6. 如果你选择了"With fields"选项,你需要在"Fields to initialize"列表中选择需要初始化的字段。

IntelliJ IDEA 会自动生成对应的构造方法,包括必要的参数。

7. 点击"OK"按钮,IntelliJ IDEA 会自动生成你选择的构造方法。

8. 你可以在代码中查看生成的构造方法,并根据需要进行修改。

需要注意的是,这种方法只能生成简单的构造方法,如果你需要更复杂的构造方法,可能需要手动编写。

《idea快速生成实体构造方法》篇2在使用IntelliJ IDEA 编写Java 代码时,我们可以使用代码生成功能来快速创建实体类的构造方法。

以下是一步一步的操作方法:1. 首先,在Java 项目中创建一个新的类(如果还没有的话)。

2. 打开该类,然后在代码中找到你需要生成构造方法的地方。

3. 确保你已经导入了所需的类或包。

提升开发效率的notepad++一些快捷方法(实体类的创建和查询sql语句的编写)

提升开发效率的notepad++一些快捷方法(实体类的创建和查询sql语句的编写)

提升开发效率的notepad++⼀些快捷⽅法(实体类的创建和查询sql语句的编
写)
新⼿要创建数据库表中,对应字段名的实体类,是不是感觉很⿇烦,可以⽤notepad++快速的把实体类中的字段名进⾏排版,随后直接粘⼊idea使⽤
下⾯是navicat的演⽰
选择⼀个表,右键选择设计表
复制字段到notepad++
ctrl+h调出替换窗⼝,把查找模式选中扩展,查找⽬标输⼊\r(\r的作⽤相当于回车,可以理解成是每⼀⾏的最后),替换⽬标为;,可以快速的以分号结尾
此时按住alt,可以多⾏选择
输⼊访问修饰符和变量类型,ctrl+a全选沾到idea中进⾏对应的数据类型的修改
还有⼀个⽐较⽅便的是把回车(\r)和换⾏(\n)替换为 ,
第⼀步还是从数据库中粘贴字段到notepad++中
ctrl+h替换
转换之后的效果
还是复制粘贴拿去⽤
最后⼀个是字母⼤⼩写转换,选中单词,ctrl+u变成⼩写;ctrl+shift+u变成⼤写。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实体类的创建一、实验目的:1、能够使用实体类和命名空间实现用户注册功能2、拥有良好的编程习惯3、拥有分析问题、解决问题的能力4、拥有独立思考意识、勇于克服困难的素质二、实验内容创建用户实体类、药品实体类、商家实体类三、实验步骤1、创建用户实体类:1)在MedicineBLL层创建代码:namespace MedicineBLL{public static class UserManager{public static void AddUser(User user){UserService.AddUser(user);}public static void DeleteUser(User user){UserService.DeleteUser(user);}public static void ModifyUser(User user){UserService.ModifyUser(user);}public static IList<User> GetUsers(){return UserService.GetUsers();}/// <summary>/// 登录验证(通过判断用户登录名是否存在,密码是否正确,验证是否为合法用户) /// </summary>/// <param name="loginName">用户登录名</param>/// <param name="loginPwd">用户密码</param>/// <param name="validUser">用户对象</param>/// <returns>布尔值</returns>public static bool UserLogin(string UserName, string UserPwd, out User validUser) {User user = UserService.GetUserByLoginName(UserName);if (user == null) //登录名不存在{validUser = null;return false;}else if (erPwd != UserPwd) //密码错误{validUser = null;return false;}else{validUser = user;return true;}}/// <summary>/// 注册新用户/// </summary>/// <param name="user">用户对象</param>/// <returns>布尔值</returns>public static bool UserRegister(User user){if (UserService.GetUserByLoginName(erName) != null){return false;}else{AddUser(user);return true;}}public static User GetUserById(int id){return UserService.GetUserById(id);}}}2)在MedicineDAL层创建代码:namespace MedicineDAL{public class UserService{private static string connectionString =ConfigurationManager.ConnectionStrings["MedicineCon"].ConnectionString;/// <summary>/// 添加用户/// </summary>/// <param name="user">用户对象</param>public static void AddUser(User user){using (SqlConnection cn = new SqlConnection(connectionString)){cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql ="INSERT Users (UserName, UserPwd, RealName, Sex, Role, Remark, Phone)" + "VALUES (@UserName, @UserPwd, @RealName, @Sex, @Role, @Remark, @Phone)"; mandText = sql;cm.Parameters.AddWithValue("@UserName", erName);cm.Parameters.AddWithValue("@UserPwd", erPwd);cm.Parameters.AddWithValue("@RealName", user.RealName);cm.Parameters.AddWithValue("@Sex", user.Sex);cm.Parameters.AddWithValue("@Role", user.Role);cm.Parameters.AddWithValue("@Remark", user.Remark);cm.Parameters.AddWithValue("@Phone", user.Phone);cm.ExecuteNonQuery();}}/// <summary>/// 删除用户/// </summary>/// <param name="user">用户对象</param>.public static void DeleteUser(User user){using (SqlConnection cn = new SqlConnection(connectionString)){cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "DELETE Users WHERE ID = @ID";mandText = sql;cm.Parameters.AddWithValue("@ID", user.ID);cm.ExecuteNonQuery();}}/// <summary>/// 修改用户/// </summary>/// <param name="user">用户对象</param>public static void ModifyUser(User user){using (SqlConnection cn = new SqlConnection(connectionString)) {cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql ="UPDATE Users " +"SET " +"UserName = @UserName, " +"UserPwd = @UserPwd, " +"RealName = @RealName, " +"Sex = @Sex, " +"Role = @Role, " +"Remark = @Remark, " +"Phone = @Phone " +"WHERE ID = @ID";mandText = sql;cm.Parameters.AddWithValue("@ID", user.ID);cm.Parameters.AddWithValue("@UserName", erName);cm.Parameters.AddWithValue("@UserPwd", erPwd);cm.Parameters.AddWithValue("@RealName", user.RealName);cm.Parameters.AddWithValue("@Sex", user.Sex);cm.Parameters.AddWithValue("@Role", user.Role);cm.Parameters.AddWithValue("@Remark", user.Remark);cm.Parameters.AddWithValue("@Phone", user.Phone);cm.ExecuteNonQuery();}}/// <summary>/// 查询所有用户的所有字段/// </summary>/// <returns>用户对象集合</returns>public static IList<User> GetUsers(){using (SqlConnection cn = new SqlConnection(connectionString)){cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "SELECT * FROM Users";mandText = sql;SqlDataReader dr = cm.ExecuteReader();List<User> list = new List<User>();while (dr.Read()){User user = new User();user.ID = (int)dr["ID"];erName = (string)dr["UserName"];erPwd = (string)dr["UserPwd"];user.RealName = (string)dr["RealName"];user.Sex = (string)dr["Sex"];user.Role = (string)dr["Role"];user.Remark = (string)dr["Remark"];user.Phone = (string)dr["Phone"];list.Add(user);}dr.Close();return list;}}/// <summary>/// 根据登录名查询用户/// </summary>/// <param name="loginName">用户登录名</param>/// <returns>用户对象</returns>public static User GetUserByLoginName(string UserName){using (SqlConnection cn = new SqlConnection(connectionString)){cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "SELECT * FROM Users WHERE UserName = @UserName"; mandText = sql;cm.Parameters.AddWithValue("@UserName", UserName);SqlDataReader dr = cm.ExecuteReader();if (dr.Read()){User user = new User();user.ID = (int)dr["ID"];erName = (string)dr["UserName"];erPwd = (string)dr["UserPwd"];user.RealName = (string)dr["RealName"];user.Sex = (string)dr["Sex"];user.Role = (string)dr["Role"];user.Remark = (string)dr["Remark"];user.Phone = (string)dr["Phone"];dr.Close();return user;}else{dr.Close();return null;}}}/// <summary>/// 根据Id查询用户/// </summary>/// <param name="id">用户Id</param>/// <returns>用户对象</returns>public static User GetUserById(int id){using (SqlConnection cn = new SqlConnection(connectionString)) {cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "SELECT * FROM Users WHERE ID = @ID";mandText = sql;cm.Parameters.AddWithValue("@ID", id);SqlDataReader dr = cm.ExecuteReader();if (dr.Read()){User user = new User();user.ID = (int)dr["ID"];erName = (string)dr["UserName"];erPwd = (string)dr["UserPwd"]; user.RealName = (string)dr["RealName"]; user.Sex = (string)dr["Sex"];user.Role = (string)dr["Role"];user.Remark = (string)dr["Remark"];user.Phone = (string)dr["Phone"];dr.Close();return user;}else{dr.Close();return null;}}3)在MedicineModels创建代码:namespace MedicineModels{[Serializable()]public class User{private int Id;private string Username = String.Empty;private string Userpwd = String.Empty;private string Realname = String.Empty;private string sex = String.Empty;private string role = String.Empty;private string remark = String.Empty;private string phone = String.Empty;public User() { }public int ID{get { return this.Id;}set { this.Id = value;}}public string UserName{get { return ername;}set { ername = value;}}public string UserPwd{get { return erpwd;}set { erpwd = value;}}public string RealName{get { return this.Realname;}set { this.Realname = value;}}public string Sex{get { return this.sex;}set { this.sex = value;}}public string Role{get { return this.role;}set { this.role = value;}}public string Remark{get { return this.remark;}set { this.remark = value;}}public string Phone{get { return this.phone; }set { this.phone = value; }}}}2、药品实体类1)在MedicineModels层创建代码:namespace MedicineModels{[Serializable()]public class Medicines{public Medicines() { }private int Id;public int ID{get { return this.Id;}set { this.Id = value;}}private string number = String.Empty;public string Number{get { return number; }set { number = value; }}private string medName = String.Empty;public string MedName{get { return medName; }set { medName = value; }}private int kindId;public int KindId{get { return kindId; }set { kindId = value; }}private string Productiondate;public string ProductionDate{get { return Productiondate; }set { Productiondate = value; }}private string description = String.Empty;public string Description{get { return description; }set { description = value; }}private string img = String.Empty;public string Img{get { return img; }set { img = value; }}private string medValid;public string MedValid{get { return medValid; }set { medValid = value; }}private string medfactory = String.Empty;public string MedFactory{get { return medfactory; }set { medfactory = value; }}private string medprice = String.Empty;public string MedPrice{get { return medprice; }set { medprice = value; }}}}2)在MedicineDAL层创建代码:namespace MedicineDAL{public static class MedicineService{private static string connectionString =ConfigurationManager.ConnectionStrings["MedicineCon"].ConnectionString;//根据id查找药品public static Medicines GetMedicineById(int id){using (SqlConnection cn = new SqlConnection(connectionString )) {cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "select * from Medicine where ID=@id";mandText = sql;cm.Parameters.AddWithValue("@id", id);SqlDataReader dr = cm.ExecuteReader();if (dr.Read()){Medicines med = new Medicines();med.ID = (int)dr["ID"];med.Number = (string)dr["Number"];med.MedName = (string)dr["MedName"];med.KindId = (int)dr["KindId"];med.ProductionDate = (string)dr["ProductionDate"];med.Description = (string)dr["Description"];med.Img = (string)dr["Img"];med.MedValid = (string)dr["MedValid"];med.MedFactory = (string)dr["MedFactory"];med.MedPrice = (string)dr["MedPrice"];dr.Close();return med;}else{dr.Close();return null;}}}//删除public static void DeleteMedicine(Medicines medicine){using (SqlConnection cn = new SqlConnection(connectionString)) {cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "Delete from Medicine where ID=@ID";mandText = sql;cm.Parameters.AddWithValue("@ID", medicine .ID );cm.ExecuteNonQuery();}}//添加药品public static void Addmedicine(Medicines med){using (SqlConnection cn = new SqlConnection(connectionString)){cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "insert into Medicine( Number,MedName,KindId,Description,Img,MedValid,MedFactory,MedPrice,ProductionDate)values( @Number,@MedName,@KindId,@Description,@Img,@MedValid,@MedFactory,@MedPrice,@Producti onDate )";mandText = sql;cm.Parameters.AddWithValue("@Number", med.Number);cm.Parameters.AddWithValue("@MedName", med.MedName);cm.Parameters.AddWithValue("@KindId", med.KindId);cm.Parameters.AddWithValue("@Description", med.Description);cm.Parameters.AddWithValue("@Img", med.Img);cm.Parameters.AddWithValue("@MedValid", med.MedValid);cm.Parameters.AddWithValue("@MedFactory", med.MedFactory);cm.Parameters.AddWithValue("@MedPrice", med.MedPrice);cm.Parameters.AddWithValue("@ProductionDate", med.ProductionDate);cm.ExecuteNonQuery();}}//修改public static void ModifyMedicine(Medicines med){using (SqlConnection cn = new SqlConnection(connectionString)){cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "update Medicine setNumber=@Number,MedName=@MedName,KindId=@KindId,ProductionDate=@ProductionDate,Description=@D escription,Img=@Img,MedValid=@MedValid,MedFactory=@MedFactory,MedPrice=@MedPrice whereID=@ID";mandText = sql;cm.Parameters.AddWithValue("@Number", med.Number);cm.Parameters.AddWithValue("@MedName", med.MedName);cm.Parameters.AddWithValue("@KindId", med.KindId);cm.Parameters.AddWithValue("@ProductionDate", med.ProductionDate);cm.Parameters.AddWithValue("@Description", med.Description);cm.Parameters.AddWithValue("@Img", med.Img);cm.Parameters.AddWithValue("@MedValid", med.MedValid);cm.Parameters.AddWithValue("@MedFactory", med.MedFactory);cm.Parameters.AddWithValue("@MedPrice", med.MedPrice);cm.Parameters.AddWithValue("@ID", med.ID);cm.ExecuteNonQuery();}}//查找所有药品public static IList<Medicines> GetMedicine(){using (SqlConnection cn = new SqlConnection(connectionString)) {cn.Open();SqlCommand cm=new SqlCommand ();cm.Connection =cn;string sql="select * from Medicine";mandText =sql;SqlDataReader dr=cm.ExecuteReader ();List <Medicines> list = new List<Medicines>();while (dr.Read()){Medicines medicine = new Medicines();medicine.ID = (int)dr["ID"];medicine.Number = (string)dr["Number"];medicine.MedName = (string)dr["MedName"];medicine.KindId = (int)dr["KindId"];medicine.ProductionDate = (string)dr["ProductionDate"]; medicine.Description = (string)dr["Description"];medicine.Img = (string)dr["Img"];medicine.MedValid = (string)dr["MedValid"];medicine.MedFactory = (string)dr["MedFactory"];medicine.MedPrice = (string)dr["MedPrice"];list.Add(medicine);}dr.Close();return list;}}}}3)在MedicineBLL创建代码:namespace MedicineBLL{public static class MedicineManager{public static void DeleteMedicine(Medicines medicine) {MedicineService.DeleteMedicine(medicine);}public static void ModifyMedicine(Medicines medicine) {MedicineService.ModifyMedicine(medicine);}public static IList<Medicines> GetMedicine(){return MedicineService.GetMedicine();}public static Medicines GetMedicineById(int id){return MedicineService.GetMedicineById(id);}public static void Addmedicine(Medicines med){MedicineService.Addmedicine(med);}}}3、商家实体类1)在MedicineBLL层创建代码namespace MedicineBLL{public class FactoryManager{public static void DeleteFactory(Factorys fac){FactoryService.DeleteFactory(fac);}public static void ModifyFactory(Factorys fac){FactoryService.ModifyFactory(fac);}public static IList<Factorys> GetFactroy(){return FactoryService.GetFactory();}public static Factorys GetFactoryById(int id){return FactoryService.GetFactoryById(id);}{FactoryService.AddFactory(fac);}}}2)在MedicineDAL层创建代码namespace MedicineDAL{public class FactoryService{private static string connectionString =ConfigurationManager.ConnectionStrings["MedicineCon"].ConnectionString;//根据id查找厂家public static Factorys GetFactoryById(int id){using (SqlConnection cn = new SqlConnection(connectionString)) {cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "select * from Factory where ID=@id";mandText = sql;cm.Parameters.AddWithValue("@id", id);SqlDataReader dr = cm.ExecuteReader();if (dr.Read()){Factorys fac= new Factorys ();fac.ID = (int)dr["ID"];fac.FactoryName = (string)dr["FactoryName"];fac.FactoryStruction = (string)dr["FactoryStruction"]; return fac;}else{dr.Close();return null;}}}//删除{using (SqlConnection cn = new SqlConnection(connectionString)){cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "Delete from Factory where ID=@ID";mandText = sql;cm.Parameters.AddWithValue("@ID", fac.ID );cm.ExecuteNonQuery();}}//修改public static void ModifyFactory(Factorys fac){using (SqlConnection cn = new SqlConnection(connectionString)){cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "UPDATE Factory setFactoryName=@FactoryName,FactoryStruction=@FactoryStruction where ID=@ID";mandText = sql;cm.Parameters.AddWithValue("@FactoryName", fac.FactoryName);cm.Parameters.AddWithValue("@FactoryStruction", fac.FactoryStruction); cm.Parameters.AddWithValue("@ID", fac.ID);cm.ExecuteNonQuery();}}//添加厂家信息public static void AddFactory(Factorys fac){using (SqlConnection cn = new SqlConnection(connectionString)){cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "insert into Factory ( FactoryName,FactoryStruction) values(@FactoryName,@FactoryStruction )";mandText = sql;cm.Parameters.AddWithValue("@FactoryName", fac.FactoryName);cm.Parameters.AddWithValue("@FactoryStruction", fac.FactoryStruction);cm.ExecuteNonQuery();}}//查找所有厂家信息public static IList<Factorys> GetFactory(){using (SqlConnection cn = new SqlConnection(connectionString)) {cn.Open();SqlCommand cm = new SqlCommand();cm.Connection = cn;string sql = "select * from Factory";mandText = sql;SqlDataReader dr = cm.ExecuteReader();List<Factorys> list = new List<Factorys>();while (dr.Read()){Factorys fac = new Factorys ();fac.ID = (int)dr["ID"];fac.FactoryName = (string)dr["FactoryName"];fac.FactoryStruction = (string)dr["FactoryStruction"]; list.Add(fac );}dr.Close();return list;}}}}3)在MedicineModels层创建代码namespace MedicineModels{[Serializable()]public class Factorys{public Factorys() { }private int Id;public int ID{get { return Id; }set { Id = value; }}private string factoryname = String.Empty;public string FactoryName{get { return factoryname ;}set { factoryname = value; }}public string factorystruction = String.Empty;public string FactoryStruction{get { return factorystruction; }set { factorystruction = value; }}}}实验总结:使用SqlDataReader对象执行数据读取操作时,先用SqlCommand对象的ExecuteReader()方法创建一个SqlDataReader类的对象实例,再用SqlDataReader对象的Read()方法读取数据(若有多条记录,可通过while循环读取,最后用SqlDataReader对象的Close()方法关闭该对象)。

相关文档
最新文档